본문 바로가기

Programming/Android13

안드로이드 이벤트 리스너 만들기 Custom View를 만들거나 비동기로 callback return을 받기 위해서는 해당 custom 객체에 이벤트 리스너를 만들어 줘야 한다. (그래야 이벤트를 주고 받을 수 있으니깐...)일단 Custom View에 이벤트 리스너 Interface를 선언. 인터페이스 내의 함수에는 event받을 때 처리하고자 하는 파라미터들을 기입해도 상관없다. public interface SampleEventListener{void onReceivedEvent();} 그 후엔 이제 Custom View에서 interface로 선언했던 이벤트 리스너를 변수로 등록한다. private SampleEventListener mSampleEventListener; 외부에서 이벤트를 등록할 수 있도록 setEvent 함수.. 2015. 1. 24.
java.lang.UnsatisfiedLinkError 안드로이드 스튜디오에서 다음 맵 지도를 붙이려고 하는데 자꾸 아래와 같은 에러가 발생한다. 딱히 다음 지도 api에서도 그와 관련된 문구가 없고 딸랑 아래 사진과 같이 lib 3개만 붙이면 된다고 나와있다. 아... 시키는대로 했는데 도대체 모가 문제지... 해당 에러로 검색을 하다가 해결책이 나온 사이트를 발견!! 글의 요지는 안드로이드 스튜디오에서는 .so파일을 찾지 못해서 생기는 문제이고,.so파일을 jar로 압축시켜준 후 jar를 import 해주면 해결된다는 것이었다. 여기서 주의 사항이 있는데 해당 .so파일만 jar로 바꾸면 안되고 lib폴더까지 통째로 포함해서 jar가 완성되어야 한다.즉, jar파일 안에는 lib/armeabi/libDaumMapEngineApi.so 파일이 존재해야 하는.. 2015. 1. 22.
DrawerLayout 내의 listview 현재 Navigation Drawer의 개발을 위해 아래와 같이 코드를 작성하였다. 위와 같이 작성하면 아래의 그림과 같은 UI 화면(왼쪽에 나타나는 customNavigation 화면)이 나타나고, 각각의 listView에 있는 아이템들을 클릭하면 각각의 fragment가 attach되는 프로그램이다. 그런데 listView의 setOnItemClickListener가 안먹는다....왜이러지... 왜이러지...ListView.onItemClickListener로도 해보고 AdapterView.onItemClickListener로도 해보고.. stackOverflow에서도찾아봤는데 해결한 사람이 없는 것 같다.어떤 사람은 프로젝트 지우고 다시 했더니 된다고 한 사람도 있는데..차마 이렇게 까지 하긴 싫었.. 2014. 12. 24.
안드로이드 스튜디오 could not create the java virtual machine 안드로이드 스튜디오 v1.0.2가 새롭게 나와 업데이트를 하였는데.. gradle에서 could not create the java virtual machine과 함께 jvm 관련된 에러가 발생하였다. '아 모지....' 해당 에러는 힙 메모리가 머 어찌어찌해서 gradle이 실행이 안되고 있다고 나타내는 메시지였고,안드로이드 스튜디어에서 jvm 메모리 설정을 늘려서 해결하였다. 안드로이드 스튜디오에서 jvm 환경 설정하는 방법1. File의 setting 메뉴를 클릭2. Compiler 항목을 선택한 후 오른쪽 VM Options에다가 -Xms512m이라고 입력 후 적용 버튼 클릭. 3. 다시 gradle sync를 적용시키면 실패 없이 빌드 되는 것을 확인할 수 있다. 2014. 12. 22.