안드로이드 개발 질문/답변
(글 수 45,052)
리스트 뷰에서 체크박스 전체를 체크 해제 하는 경우에
어떻게 체크박스 핸들을 설정합니까?
어떻게 체크박스 핸들을 설정합니까?
class IconicAdapter extends ArrayAdapter { Activity context; IconicAdapter(Activity context) { super(context, R.layout.row, mAlbumNameArray); this.context=context; } public View getView(int position, View convertView, ViewGroup parent) { if(mAlbumNameArray.size()==array) { array=0; } LayoutInflater inflater=context.getLayoutInflater(); View row=inflater.inflate(R.layout.row, null); TextView label=(TextView)row.findViewById(R.id.text1); label.setText(mAlbumNameArray.get(position)); checkedString.add(mAlbumNameArray.get(position)); check2[array] = (CheckBox)row.findViewById(R.id.CheckBox02); check2[array].setFocusable(false); array++; System.out.println(array); return(row); }
2010.02.11 10:00:06
'')
리스트 뷰에서 체크박스 전체를 체크 해제 하는 경우에
어떻게 체크박스 핸들을 어떻게 생성하는지 궁금합니다
check2[array] = (CheckBox)row.findViewById(R.id.CheckBox02);
여기서 하면 getview가 호출때마다 생성되어서 안되기 떄문에;
리스트 뷰에서 체크박스 전체를 체크 해제 하는 경우에
어떻게 체크박스 핸들을 어떻게 생성하는지 궁금합니다
check2[array] = (CheckBox)row.findViewById(R.id.CheckBox02);
여기서 하면 getview가 호출때마다 생성되어서 안되기 떄문에;
2010.02.11 10:10:28
그부분을 핸들러 안에 넣어주면 되지 않을까요? 아니면 onResume 같은 메소드를 Override해서 쓰시는 것도.. 물론 onResume이 호출될 경우라면요..
2010.02.11 10:22:29
제가 하고 싶은 말은 그게 아니라
check2[array] = (CheckBox)row.findViewById(R.id.CheckBox02);
이부분을 전체 체크박스를 해야 쓸수 있는데;
이변수 선언을 어디서 하냐구요-_-;
check2[array] = (CheckBox)row.findViewById(R.id.CheckBox02);
이부분을 전체 체크박스를 해야 쓸수 있는데;
이변수 선언을 어디서 하냐구요-_-;
2010.02.11 10:30:12
헐..장난침-_-;리스트 뷰한번이라도 만들어 보셨음?
아답터를 연결할떄 한행씩 xml에서 불러와서 만들잖아요-_-
아답터를 연결할떄 한행씩 xml에서 불러와서 만들잖아요-_-
- class IconicAdapter extends ArrayAdapter {
- Activity context;
- }
- 여기 생성자임?
2010.02.11 10:32:32
헐 진짜 listview한개라도 만들어본적은 있기라도함?
- IconicAdapter(Activity context) {
- super(context, R.layout.row, mAlbumNameArray);
- CheckBox[] check2=new CheckBpx[]{R.id.CheckBox2};
- this.context=context;
- }
체크박스 리스트 같은 경우엔
listView.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_multiple_choice, arrayList));
같이 안드로이드 내부 레이아웃을 써서 손쉽게 만들수 있습니다. 복잡한 디자인이 아니라 간단하게 체크박스만 나오게 할려면요...
그리고 핸들러 등록은
private final Handler handlerController = new Handler() {
@Override
public void handleMessage(Message msg) {
//TODO
}
};
요렇게 핸들러 등록하시고,
private Handler handler = handlerController
한다음
handler.sendMessage(new Message());
하면 되겠습니다