我为每个项目创建了一个带有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) {

        }
    });




}

最佳答案

像这样全局定义一个列表:

 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中,希望对您有所帮助!

09-29 20:00