진저브레드 이하에서 Header view와 Footer view를 사용할 경우 아래처럼
IndexOutOfBoundsException이 발생하는 경우가 생긴다..
E/AndroidRuntime(11497): FATAL EXCEPTION: main
E/AndroidRuntime(11497): java.lang.IndexOutOfBoundsException: Invalid index 1, size is 1
E/AndroidRuntime(11497): at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:257)
E/AndroidRuntime(11497): at java.util.ArrayList.get(ArrayList.java:311)
E/AndroidRuntime(11497): at android.widget.HeaderViewListAdapter.isEnabled(HeaderViewListAdapter.java:164)
E/AndroidRuntime(11497): at android.widget.ListView.dispatchDraw(ListView.java:3062)
E/AndroidRuntime(11497): at android.widget.ExpandableListView.dispatchDraw(ExpandableListView.java:233)
E/AndroidRuntime(11497): at android.view.View.draw(View.java:7093)
E/AndroidRuntime(11497): at android.widget.AbsListView.draw(AbsListView.java:2699)
E/AndroidRuntime(11497): at android.view.ViewGroup.drawChild(ViewGroup.java:1739)
E/AndroidRuntime(11497): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1466)
E/AndroidRuntime(11497): at android.view.ViewGroup.drawChild(ViewGroup.java:1737)
E/AndroidRuntime(11497): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1466)
E/AndroidRuntime(11497): at android.view.View.draw(View.java:6989)
...
발생 원인은
어댑터가 가지고 있는 아이템의 갯수가 줄어들었을 때,
HeaderView와 FooterView를 핸들링 하기 위해 안드로이드 내부적으로 가지고 있는 HeaderViewListAdapter 의 count가 같이 변경되지 못해 발생하는 것으로
안드로이드 프레임 웍에서 onDraw 호출 시 HeaderViewListAdapter의 getCount()를 호출하여 아직 갱신되지 않은 아이템 갯수를 받아가기 때문에 발생한다.
따라서 아이템의 갯수가 변경되면 그 즉시 notifyDataSetChanged()를 호출하여 HeaderViewListAdapter의 getCount()를 갱신해 주면 해결이 가능하다.
...젠장.. 어렵구만...
2013. 5. 30.
2011. 9. 15.
[Neo] 갤럭시 네오 진저브레드 루팅하기
단말기를 루팅할 경우 AS 등에 불이익을 받으실 수 있으며, 아래 내용을 따라하다 발생하는 사고에 관해서 본인은 책임을 져 드릴 수 없으니 자신 없으신 분들은 주위에 컴퓨터를 잘 하는 친구의 도움을 받으시거나 순정그대로 사용하시기를 권장합니다.
또한 금일 2010.09.15일을 기준으로 Galaxy neo 진저브레드의 루팅방법 및 관련 파일이 업로드 되어 있는 동호회, 사이트가 없으므로 퍼가실 때에는 출처를 꼭 명기해 주시기 바라며 전체 내용을 복사해 가지 마시고 제사이트를 링크해 주시기 바랍니다.
2011.09.25 일 추가
22일 업그레이드 된 TI08에서는 SU가 안생겨서 루팅이 안되네요.
다른 방법 찾아보고 포스팅 해 드릴께요^^
[Galaxy neo spec]
- LG U+ 전용(CDMA Rev.A 방식, USIM 없음)
- 할부원금 없음. (내가 구입할 때는 5만원)
- Android 2.3 진저브레드(2.2에서 업그레이드 됨)
- 800x480 wvga 해상도(보급형 중에서는 고해상도)
- 800Mhz AP
- 256M Ram
- 200M 앱 설치공간
1. 루팅 환경
- 펌웨어 버전: 2.3.4
- 빌드번호: GINGERBREAD.TH13 / TL14
- 삼성 KIES를 통해 2011.09.12일경 업그레이드 한 순정 상태
2. 준비물
- Samsung Kies가 설치되어 있거나
- Galaxy neo용 통합 드라이버가 설치되어 있을것. [드라이버 다운로드]
- update.zip 파일 [다운로드 링크]
- micro sd카드(메모리카드)
3. 루팅하기
- 갤럭시 네오와 PC를 데이터 케이블을 사용하여 연결
- 네오의 화면에 이동식 메모리 화면이 뜨면 "이동식 메모리 연결" 버튼을 눌러 이동식 디스크를 사용하도록 설정

- SD카드의 최 상위폴더에 위에서 다운로드한 update.zip 파일을 복사
(내컴퓨터 -> 이동식 디스크 // 왼쪽처럼 하여 보이는 폴더에 다운로드한 파일을 붙여 넣으면 됨)

- "USB 저장장치를 끄세요" 버튼을 선택하여 이동식 디스크 해제
- 파워 버튼을 눌러 갤럭시 네오 종료
- HOME 키를 누른 상태로 파워키를 눌러 전원을 켬, 화면에 Galaxy Neo 글자가 보이면 파워버튼은 떼도 됨.
- 아래와 같이 리커버리 화면이 보이면 소리낮춤(Volume down) 버튼을 눌러 "apply update from sdcard"를 선택한 후 Home 키를 누름

- SD 카드의 내용이 보이면 Volume up/down 키를 사용하여 update.zip 파일을 선택한 후 Home키 누름

- 파일의 설치가 끝나고 complete 메시지가 화면에 보이면 "reboot system now"를 선택한 후 Home키를 눌러 재부팅
- 끝! 설치된 앱 목록에 Superuser가 보이면 루팅 완료^^
요렇게 갤럭시 네오 진저브레드 TH13의 루팅 끝~!
계속적으로 갤럭시 네오와 관련된 정보를 올릴 수 있도록 오른쪽에 광고 한번씩만 클릭해 주세요 +.+;;
버전이 또 업그레이드 되면 또 업데이트 할 수 있도록 노력해 보겠습니당ㅋ
피드 구독하기:
글 (Atom)
[다자녀할인] 2자녀 이상 모든 공항 주차장 50% 할인받기 (둘 중 한명은 15세 이하)
다자녀 기준이 2명으로 완화되면서 자녀가 2명만 되어도 공영주차장 50%(지역에 따라 30%인 곳 도 있음) 할인이 가능하고, 전국의 공항주차장도 50% 할인이 가능하다. "다둥이카드" 나 "경기 I Plus 카드"...