您正在使用多选列表 任何人都可以告诉我应该如何选择全部 任何按钮点击事件的项目 或如何取消选择按钮点击事件
上的所有项目我的代码在这里
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.contact_list);
findViewsById();
PhoneContacts pc = new PhoneContacts(ContactList.this);
pc.readContacts();
for (int i = 0; i < pc.allPhoneNumbers.size(); i++) {
_allNumberAndNameMergeList.add(pc.allContactName.get(i) + "\n"
+ pc.allPhoneNumbers.get(i));
}
adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_multiple_choice,
_allNumberAndNameMergeList);
listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
listView.setAdapter(adapter);
button.setOnClickListener(this);
}
private void findViewsById() {
listView = (ListView) findViewById(R.id.list);
button = (Button) findViewById(R.id.testbutton);
}
public void onClick(View v) {
SparseBooleanArray checked = listView.getCheckedItemPositions();
ArrayList<String> selectedItems = new ArrayList<String>();
for (int i = 0; i < checked.size(); i++) {
// Item position in adapter
int position = checked.keyAt(i);
// Add sport if it is checked i.e.) == TRUE!
if (checked.valueAt(i))
selectedItems.add(adapter.getItem(position));
}
String[] outputStrArr = new String[selectedItems.size()];
for (int i = 0; i < selectedItems.size(); i++) {
outputStrArr[i] = selectedItems.get(i);
}
}
}
您正在使用多选列表 任何人都可以告诉我应该如何选择全部 任何按钮点击事件的项目 或如何取消选择按钮点击事件
上的所有项目答案 0 :(得分:0)
我会创建自定义适配器来扩展ArrayAdapter和ListView项目,该项目将包含例如复选框。比内部适配器类getView()方法处理选定的项目位置以获取当前位置上的对象,您可以执行任何您想要的操作。您可以查看本教程 - 12.在ListView中选择多个项目
http://www.vogella.com/articles/AndroidListView/article.html