Programming/Android(13)
-
jsoup 사용하기
파이썬에 BeautifulSoup가 있고, C#에 HtmlAgilityPack이 있다면, 자바에는 Jsoup이 html 파싱에 가장 편할 것 같다. (이름도 beautifulSoup와 비슷하게 jsoup임) 사용 방법부터 보자면, 우선 jsoup 라이브러리부터 가져와야 한다.해당 홈페이지에서 다운 받거나, gradle을 이용해서 라이브러리를 추가하도록 한다. dependencies{ compile 'org.jsoup:jsoup:1.7.3'} 라이브러리 추가가 완료되었으면 이제 실제 어떻게 사용되는지를 확인해 보자. 웹 페이지의 GET 데이터 정보 가져오기 import org.jsoup.Jsoup; import org.jsoup.nodes.Document;import org.jsoup.nodes.Eleme..
2015.02.19 -
intent 파라미터가 null?
아래와 같이 intent를 생성하여 다른 activity에 data를 보내는데, 받는 쪽 activity에서 data가 null이라는 error를 리턴했다. 보내는 쪽 코드 Intent i = new Intent(Test1Activity.this, Test2Activity.class);i.putExtra("Title", edit_title.getText());startActivity(i); 받는쪽 코드Intent i = getIntent(); String title = intent.getStringExtra("Title");
2015.02.09 -
ScrollView 아래에 버튼 두기
앱 화면에 ScrollView를 두고 그 아래에 확인 버튼을 두려고 하는데 자꾸 확인 버튼을 ScrollView가 뒤덮는 상황이 발생한다. 기존에 구현한 코드는 아래와 같다. 해결 방법은 의외로 간단했다. ScrollView에서 android:layout_weight="1" 로 설정해주면 아래 Button이 보이게 된다.layout_weight=1로 설정을 하게 되면 우선 Button의 height가 wrap_content이기 때문에 Button이 필요로 하는 영역을제외한 나머지 모든 부분을 ScrollView가 차지하겠다는 뜻이 된다. 만약 이 설정을 하지 않는다면 ScrollView의 wrap_content를 우선 처리하기 때문에 Button 영역이 ScrollView 영역에뒤덮여서 안보이게 된다.
2015.02.07 -
안드로이드 이벤트 리스너 만들기
Custom View를 만들거나 비동기로 callback return을 받기 위해서는 해당 custom 객체에 이벤트 리스너를 만들어 줘야 한다. (그래야 이벤트를 주고 받을 수 있으니깐...)일단 Custom View에 이벤트 리스너 Interface를 선언. 인터페이스 내의 함수에는 event받을 때 처리하고자 하는 파라미터들을 기입해도 상관없다. public interface SampleEventListener{void onReceivedEvent();} 그 후엔 이제 Custom View에서 interface로 선언했던 이벤트 리스너를 변수로 등록한다. private SampleEventListener mSampleEventListener; 외부에서 이벤트를 등록할 수 있도록 setEvent 함수..
2015.01.24 -
java.lang.UnsatisfiedLinkError
안드로이드 스튜디오에서 다음 맵 지도를 붙이려고 하는데 자꾸 아래와 같은 에러가 발생한다. 딱히 다음 지도 api에서도 그와 관련된 문구가 없고 딸랑 아래 사진과 같이 lib 3개만 붙이면 된다고 나와있다. 아... 시키는대로 했는데 도대체 모가 문제지... 해당 에러로 검색을 하다가 해결책이 나온 사이트를 발견!! 글의 요지는 안드로이드 스튜디오에서는 .so파일을 찾지 못해서 생기는 문제이고,.so파일을 jar로 압축시켜준 후 jar를 import 해주면 해결된다는 것이었다. 여기서 주의 사항이 있는데 해당 .so파일만 jar로 바꾸면 안되고 lib폴더까지 통째로 포함해서 jar가 완성되어야 한다.즉, jar파일 안에는 lib/armeabi/libDaumMapEngineApi.so 파일이 존재해야 하는..
2015.01.22 -
DrawerLayout 내의 listview
현재 Navigation Drawer의 개발을 위해 아래와 같이 코드를 작성하였다. 위와 같이 작성하면 아래의 그림과 같은 UI 화면(왼쪽에 나타나는 customNavigation 화면)이 나타나고, 각각의 listView에 있는 아이템들을 클릭하면 각각의 fragment가 attach되는 프로그램이다. 그런데 listView의 setOnItemClickListener가 안먹는다....왜이러지... 왜이러지...ListView.onItemClickListener로도 해보고 AdapterView.onItemClickListener로도 해보고.. stackOverflow에서도찾아봤는데 해결한 사람이 없는 것 같다.어떤 사람은 프로젝트 지우고 다시 했더니 된다고 한 사람도 있는데..차마 이렇게 까지 하긴 싫었..
2014.12.24