我为每个项目创建了一个带有CheckBox的简单ListView。 我希望用户选择一些项目。 用户如何从此ListView中获取选定的Items值并将其存储在例如ArrayList中?
ArrayList<String> tablesName = new ArrayList<>();
tablesName.add("one");
tablesName.add("two");
tablesName.add("three");
tablesName.add("four");
arrayAdapter = new ArrayAdapter<>(this,android.R.layout.simple_list_item_multiple_choice, tablesName);
var_tablesName_LV.setAdapter(arrayAdapter);
var_tablesName_LV.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
var_tablesName_LV.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});
}
答案 0 :(得分:1)
全局定义这样的列表:
public static List<String> selectedValue = new ArrayList<String>() ;
然后在OnItemClickListener中这样写:
var_tablesName_LV.setOnItemSelectedListener(new OnItemClickListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
String clickedvalue =(String) adapterView.getItemAtPosition(i);
selectedValue.add(clickedvalue);
}
现在ListArray中存在所有单击的值,希望对您有所帮助!。
答案 1 :(得分:1)
您可以在下面执行以下操作:-
ThreeStrings your strings = (yourString)AdapterView.getItemAtPosition(position);