Java 如何从ListView获取所选项目值
我为每个项目创建了一个带有复选框的简单列表视图。 我希望用户选择一些项目。 用户如何从此列表视图中获取选定项的值,并将其存储在例如ArrayList中Java 如何从ListView获取所选项目值,java,android,listview,Java,Android,Listview,我为每个项目创建了一个带有复选框的简单列表视图。 我希望用户选择一些项目。 用户如何从此列表视图中获取选定项的值,并将其存储在例如ArrayList中 ArrayList<String> tablesName = new ArrayList<>(); tablesName.add("one"); tablesName.add("two"); tablesName.add("three"); tablesName.add("four")
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) {
}
});
}
ArrayList tablename=new ArrayList();
表名。添加(“一”);
表名。添加(“两个”);
表名。添加(“三”);
表名。添加(“四”);
arrayAdapter=新的arrayAdapter(这个,android.R.layout.simple\u list\u item\u多选,tableName);
var_tableName_LV.setAdapter(arrayAdapter);
var_tableName_LV.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
var_tableName_LV.setOnItemSelectedListener(新的AdapterView.OnItemSelectedListener(){
@凌驾
已选择公共视图(AdapterView AdapterView、View视图、int i、long l){
}
@凌驾
未选择公共无效(AdapterView AdapterView){
}
});
}
全局定义如下列表:
public static List<String> selectedValue = new ArrayList<String>() ;
publicstaticlist selectedValue=newarraylist();
然后在你的听力中这样写:
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);
}
var\u tablename\u LV.setOnItemSelectedListener(新的OnItemClickListener(){
@凌驾
已选择公共视图(AdapterView AdapterView、View视图、int i、long l){
字符串clickedvalue=(字符串)adapterView.getItemAtPosition(i);
选择值。添加(单击值);
}
现在,所有单击的值都出现在ListArray中,我希望这会有所帮助!全局定义一个如下列表:
public static List<String> selectedValue = new ArrayList<String>() ;
publicstaticlist selectedValue=newarraylist();
然后在你的听力中这样写:
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);
}
var\u tablename\u LV.setOnItemSelectedListener(新的OnItemClickListener(){
@凌驾
已选择公共视图(AdapterView AdapterView、View视图、int i、long l){
字符串clickedvalue=(字符串)adapterView.getItemAtPosition(i);
选择值。添加(单击值);
}
现在,所有单击的值都出现在ListArray中,我希望这会有所帮助!您可以执行以下操作:-
ThreeStrings your strings = (yourString)AdapterView.getItemAtPosition(position);
您可以执行如下操作:-
ThreeStrings your strings = (yourString)AdapterView.getItemAtPosition(position);
谢谢,问题已解决。还有一件事,如果用户未选中方框,我如何将其从阵列中删除?谢谢,问题已解决。还有一件事,如果用户未选中方框,我如何将其从阵列中删除?