1. 어댑터뷰의 메카니즘을 설명해보시오
2. array Adapter 라는게 있다.
실습
어댑터에 데이터를 설정하는 private함수()선언
String[] items =겟리소스.겟스트링어레이(R.array.items)
어댑터.애드올
셋온아이템클릭리스너를통해서
listView.getItemAtPosition(position) 하면 아이템을 가져온다.
--------------------------------------------
글자를 add해서 추가한다음에 에딧텍스트를 통해 아이템 추가하기
일단 키워드 뷰에서 온클릭리스너로 텍스트를 가져온다.
추가할때, 데이터를 추가하는 위치는 어댑터여야 한다.
추가했을때, 스크롤되도록 하려면, ui적인 처리를 가지고 있는 리스트뷰에서 리스트뷰.smoothScrollToPosition 이라는 함수를 오출한다.
실습2
if (listView.getChoiceMode() == ListView.CHOICE_MODE_SINGLE) {// 쵸이스 모드와 싱글 모드를 구분
int position = listView.getCheckedItemPosition(); // 포지션,인덱스를 얻어온다. getCheckedItemposition
String text = (String) listView.getItemAtPosition(position);// 해당 인덱스에 text값을 가져온다.
mAdapter.remove(text); // 해당 텍스트를 제거한다.
} else if (listView.getChoiceMode() == ListView.CHOICE_MODE_MULTIPLE) {
SparseBooleanArray array = listView.getCheckedItemPositions(); // 선택된 true값의 인덱스를 배열로 가져온다.
List<String> removeList = new ArrayList<String>(); //인덱스가 밀리므로 값을 리스트로 가져온다.
for (int index = 0 ; index < array.size(); index++) {
int position = array.keyAt(index);
if (array.get(position)) {
String text = (String)listView.getItemAtPosition(position);
removeList.add(text);
}
}
for (String s : removeList) {
mAdapter.remove(s);
}
listView.clearChoices();
}
'Android' 카테고리의 다른 글
[4일차]멀티어댑터 만들기 실습 (0) | 2016.07.13 |
---|---|
[4일차]BaseAdapter 실습 (0) | 2016.07.13 |
[4일차]xml로 속성정의하기 (0) | 2016.07.13 |
[4일차] 컴파운드위젯,inflater (0) | 2016.07.13 |
[3일차] 프로그래스,시크,레이팅,데이트 (0) | 2016.07.12 |