我已经阅读了这个主题
whats the equivilent of getCheckedItemCount() for API level < 11?
lv.getCheckItemIds().length
可以更正已检查项目的总和,
但lv.getCheckedItemIds().length
不能,为什么?谢谢!
private void InitListView(int pos) {
List<String> msgList = getSMS(pos);
ArrayAdapter<String> adapter2 = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_multiple_choice, msgList);
lv.setAdapter(adapter2);
lv.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
SetSelectedAndTotal();
}
});
}
private void SetSelectedAndTotal(){
selectedAndTotal.setText(lv.getCheckItemIds().length + "/"+lv.getCheckedItemIds().length+ "/"
+ lv.getCount());
}
答案 0 :(得分:1)
public long[] getCheckItemIds ();
此方法已在API级别8中弃用。
使用getCheckedItemIds()
代替返回已检查项目ID的集合。仅当选择模式未设置为CHOICE_MODE_NONE时,结果才有效。
<强>返回强>
一个新数组,其中包含列表中每个已检查项目的ID。
public long[] getCheckedItemIds ();
返回已检查项ID的集合。仅当选择模式未设置为CHOICE_MODE_NONE且适配器具有稳定ID时,结果才有效。
(hasStableIds() == true)
<强>返回强>
一个新数组,其中包含列表中每个已检查项目的ID。
查看Here了解详情。
我希望这会对你有所帮助。