从ListView获取复选框值

时间:2012-09-24 22:50:13

标签: android

我有一个列表视图,它与数组适配器绑定。对于我的生活,我无法弄清楚如何获得列表视图中的复选框列表。

CheckViewArrayAdapter adapter;
    int[] intarray;

    paramListView = (ListView) findViewById(R.id.datalog_paramselectlist);

    // get all supported params
    intarray = ConMan.Ecu.getSupportedParamArrayVals();

    LinkedHashMap<Integer,String> hm = new LinkedHashMap<Integer,String>();

    for( x=0;x<intarray.length;x++){
         hm.put(intarray[x] , ConMan.Ecu.paramToText(intarray[x]));
    }

    adapter = new CheckViewArrayAdapter(this,android.R.layout.simple_list_item_multiple_choice , android.R.id.text1, hm);
    adapter.setBoolArray(ConMan.Ecu.getSelectedParamFlagArray());


    // Assign adapter to ListView
    paramListView.setAdapter(adapter);

我有一个paramListView的setOnItemClickListener可以工作,但我只想在屏幕退出时获得最后一组选中的复选框。我根本不知道在哪里看。

1 个答案:

答案 0 :(得分:0)

  

我有一个paramListView的setOnItemClickListener可以工作,但我只想在屏幕退出时获得最后一组复选框。

我假设您没有为Lis​​tView设置选择模式。如果您使用:

listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);

然后在onPause()方法中,您可以使用ListView#getCheckedItemPosition()请求已检查行的索引,并且无需在OnItemClickListener中手动更改已检查状态。