반응형

프로그램 247

SDL은, 버전이 2 이상이 아니면, MFC 의 Window Handle 과 묶을 수 없다.

문제는, SDL 2.0 버전 이상은 Visual Studio 에서 안 읽힌다. Visual Studio 2010 에서 사용중인데, 별 개삽질을 다 해도 SDL 2 버전 이상이 안 붙는다.그래서 SDL 1 버전 ( 현재 1.2.5 임 ) 을 붙이면 당연히 기존 소스들은 반쪽짜리가 된다. Windows 를 새로 생성하지 않는 이상 기존 Windows 의 데이터와 이벤트를 받아 올 수 없기 때문. 인터넷 뒤져 보면 Visual Studio 2010 에서 SDL 2.0 을 붙는게 불가능한 것 같지는 않은데....내가 하면 안 붙는다. 왜냐고 ? 몰라.그거 알면 내가 해결책 썼겠지. OTL. 참고는 : http://gamedev.stackexchange.com/questions/75983/sdl2-window-a..

프로그램 2015.01.04

안드로이드에서, 두 줄 박스 만들기

말 그대로다. 원래는 group box 를 만들려고 했는데, android 의 drawable 의 shape 혹은 layer-list 에서는 text view 를 얹을 수가 없다.그러므로, group box 는 결국 layout 쪽에서 잡아줘야 되고, 여기서는 두 선 테두리 만드는 것만 이야기한다. 원래 이런 거는, 선 스타일이 따로 있어서 border-style : double 뭐 이런 걸로 해결되어야 하는데, 왜인지는 모르겠지만 안드로이드는 이중선 스타일은 없다. ( 점선은 있더라 )자세한건 http://overoid.tistory.com/30 http://developer.android.com/guide/topics/resources/drawable-resource.html 여길 참고하고.... 결..

android gridview에서, 한 칸의 높이가 전체화면을 차지할때.

왜그런지는 모르겠는데, 나는 이런 현상이 일어났다. 보통 그리드뷰 gridview 를 쓰면, 예를 들어 한 줄 3칸 설정해서 사진같은거 표시하면 이렇게 나와야 정상인데 이렇게 나오더라고. 분명히 화면은 사진을 더 보여줄 수 있는 여유가 되는데, gridview 의 한 줄( row ) 이 화면 영역을 전부 잡아먹어서 안 되는 것. 근데 이상한건, 다른 자료 찾아보니 나같은 증상이 없었나 보다. 나만 겪은 증상인듯.결론부터 말하면, 해결책은 GridView 의 화면을 구성하는 Adapter의 layout.xml 에서,각 View 들의 height 값을 "wrap_content" 나 "fill_parent" 로 하지 말고,명시적으로 크기를 지정하라는 거다. 예를 들면 뭐 이런식. 근데, 왜 이렇게 명시적으로 ..

알서포트의 모비즌 프로그램을 PC에 설치하면, 안드로이드 VM (AVD ) 가 안돌아간다.

말그대로임.나처럼 삽질하는 사람이 없기를. 상황 설명을 하자면 이러하다. 1. 스마트폰에 모비즌 설치.2. PC에서 모비즌 설치.3. 가입 등 기본적인 절차 진행.4. 모비즌 프로그램 실행.5. PC에서 제어 가능 확인.6. 프로그램 종료 후 , PC에서 이클립스 실행.7. 이클립스에서 AVD실행.8. 무한로딩. 이거 대충 보니까, 모비즌 PC프로그램과 앱쪽 프로그램이, 안드로이드의 디버그 모드를 통해 서로 통신하는 듯 하다.그러기에, 막상 이클립스에서 AVD 와 통신하려 하면 , 이미 모비즌 프로그램이 안드로이드 쪽 채널을 점유하고 있어서, 통신이 안 되는 것 같다. 왜그런지는 모르지만 이런 경우 , 1. 심지어 모비즌 프로그램을 제거하거나 2. 컴퓨터를 재부팅 하더라도 해당 현상 - 이클립스 실행해도..

SQLite 에서, insert() 의 반환값은 lastInsertId() 와 같은 역할을 한다.

결론부터 말하면 그러하다. 자세한건 아래를 참고. https://www.sqlite.org/c3ref/last_insert_rowid.html 상황 설명을 하자면 이러하다.1. 안드로이드에서 SQLite 를 쓰는데, 2. insert 를 한 후에 last inserted id 가 필요했다. 많이 있는 패턴이잖아?3. 그런데, sqlite 는 lastInsertedID() 가 없...어서 만들어서 써야됨. 그런데, lastInsertedID() 를 뒤져보다 보니, sqlite 소스에서, db.insert() 후의 리턴값을 바로 lastInsertedID() 처럼 사용하는 코드를 봤다. 예를 들면 이런식. public int DBLayerFoo1(){....return db.insert();....} pub..

안드로이드에서 SQLite 를 사용할 때, SQLiteOpenHelper 의 onCreate()는, 앱 설치할 때 최초 한번만 실행된다.

[ 새로운 짤방이다. 신선하다. ] 한두시간 정도 별별 로그를 다 찍고 삽질을 하다가, 인터넷 찾아보고 알게 된 거다.그러니까... 보통 안드로이드에서 객체가 생성될때는, Constructor 나 onCreate() 를 거치잖아.그런데 SqLiteOpenHelper() 는 onCreate() 에 아무리 로그를 박아 넣어 봐도, 안 거치는 거다.이게 웃긴게... 혹시나 해서 생성자( Constructor ) 에 박아 넣은 로그는 잘 나오는데, onCreate() 에 넣은거만 안 나왔다. 맨첨엔 내가 무슨 코드를 잘 못 짠 줄 알고 엄청 고민했는데, 뭔가 이상해서 검토해 보니, onCreate() 가 실행되는 조건은 1. getWritableDatabase() 혹은 getWritableDatabase() 가..

안드로이드 + sqlite 에서, long 은 integer 로 동작한다.

그렇다네? 동적으로 byte를 할당하나 보다. 자세한건 언제나 진리인 stackoverflow 를 참고하자 -> http://stackoverflow.com/questions/8672473/is-there-type-long-in-android-sql 원래 하려고 했던게, 1. datetime 을 DB로 다뤄야 하는데2. sqlite 사용.3. sqlite 는 text base 이기 때문에 ASCII 타입 이외의 데이터가 좀 애매하지??4. datetime -> unixtime 으로 변경해 다루기로 결정.5. unixtime이 long 이 걸린다. 6. 검색7. stackoverflow 님께서 답변. 그러하다.

안드로이드에서 카메라 지정할 때, 카메라가 1개일때랑 2개일때랑 다르다.

코드 짜면서 "어? 이거 카메라 두개면 어쩌지?" 하고 생각했는데,바로 터졌다. 혹시 Android Camera 관련 코드 짜다가. camera.open() 이후에 바로 NullPointerException 나오는 사람은 아래의 글을 읽어볼 것. 1. 안드로이드 카메라는, Camera camera1 = Camera.open(); 과 같은 코드로 카메라 장비에 대해 자원 할당을 요청한다. 2. 근데... 카메라 두개면 어쩌냐? 알아서 할당해줌??요즘은 카메라가 앞 / 뒤 둘 다 달렸잖아.그럼, 저 카메라가 주는 Camera 가 앞 카메라인지, 뒷 카메라인지 어찌 아누? 3. 안드로이드 4.1.2 에서는, 3.1. 카메라가 1개일 때는 Camera.open(); 으로 할당 3.2. 카메라가 2개일 때는, C..

javascript 에서, checkbox 나 radio를 jquery 로 다룰 때, is() + attr() 대신 prop() 를 이용하자.

제목 그대로임.이게 아마도... jquery version 1.7 이후에 바뀐 거 같은데... 이전에 html 의 checkbox 나 radio 를 jquery 로 다루려면 , attr() 속성이나 is() 속성을 이용했다. 예를 들어, 를 , jquery 로 반전시킨다면, 아마 이렇게 할 거다. $('#check1').attr('checked', !$('#check1').is( ':checked' ) ); 즉, is() 로 체크되었는지 확인한 후, ! 로 반전해서, attr() 로 등록. ( is(":checked" ) 에 콜론이 들어가 있는것에 주의. ) 그런데, 이게 라이브러리가 올라가면서, attr() 의 기능이 약간 바뀐 듯 하다.버전 업 된 jquery 에서는, attr('checked', t..

프로그램 2014.10.11
반응형