Java 如何将文本设置为列表视图中的多个选定项
有人能告诉我如何在文本视图中显示列表视图中的多个选定项目吗? 我只想显示选中的项目,取消选中项目时无法显示。 这是我的密码Java 如何将文本设置为列表视图中的多个选定项,java,android,listview,Java,Android,Listview,有人能告诉我如何在文本视图中显示列表视图中的多个选定项目吗? 我只想显示选中的项目,取消选中项目时无法显示。 这是我的密码 final String[] favoriteTVShows = { "Wolf", "Inception", "Heat", "Gladiator", "Birdman", "Seven", "TVshow1", "TVshow2", "Tvshow3" }; ListAda
final String[] favoriteTVShows =
{
"Wolf", "Inception", "Heat", "Gladiator", "Birdman", "Seven", "TVshow1", "TVshow2", "Tvshow3"
};
ListAdapter theAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_multiple_choice, favoriteTVShows);
ListView theListView = (ListView) findViewById(R.id.theListView);
theListView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
theListView.setItemChecked(2, true);
theListView.setAdapter(theAdapter);
theListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) {
String tvShowPicked = "You selected " + String.valueOf(adapterView.getItemAtPosition(position));
Toast.makeText(List.this, tvShowPicked, Toast.LENGTH_SHORT).show();
}
});
}
创建一个方法,以便在每次调用onItemClick时更新文本视图文本
无效updateTextView{
...
}
使用getCheckedItemPositions获取列表中已选中项的数组,并将其添加到方法中
使用StringBuilder为方法中的选定项添加标签:
StringBuilder sb = new StringBuilder();
for (int i = 0; i < selectedItems; i++) {
sb.append(selectedItems[i]);
if (i < selectedItems.length - 1) {
sb.append(", "); // Add a comma for separation
}
}
textView.setText(sb);
谢谢你的回答,但我不知道如何正确使用这个方法,因为publicsparsebooleanarray getcheckeditempositions;无法使用,可能我需要在位置中放置其他内容?GetCheckEditePositions不接受整数参数,而是返回一个SparseBooleanArray,您可以使用该数组检查哪些位置的值已被检查。您可以迭代这个集合,并以这种方式构建字符串。