通过使用下面的代码片段从OnEmClickListener获取复选框
onItemClick(AdapterView<?> parent, View view, int position, long id) {
Log.w("TAG","onItemClick clicked position :"+position);
CheckBox cbx = (CheckBox)view.findViewById(R.id.c_checkbox);
if(cbx.isChecked()){
Toast.makeText(getApplicationContext(),
"Checked position " + shoppingList.get(position).getItem(),
Toast.LENGTH_SHORT).show();
}
我需要得到所有的位置来检查哪个列表项被选中。
我用了下面的片段
int firstPosition = list.getFirstVisiblePosition();
for(int i=firstPosition;i<=list.getCount();i++){
View v=list.getChildAt(i);
cbx = (CheckBox)v.findViewById(R.id.c_checkbox);
if(cbx.isChecked()){
}
}
在下面的代码cbx中,给我一个空指针异常。我使用viewholder作为自定义适配器。请给我解决方案。为什么在onitemclicklistener中也会发生同样的事情?
当做,
拉杰达尔
最佳答案
它认为可能是
for(int i=firstPosition;i< **=** list.getCount();i++)
但这只是一个疯狂的猜测。
为什么不使用可检查的列表视图,然后使用this?