Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 将未选中项的颜色更改为多选列表视图_Android_Listview_Background Color_Multichoiceitems - Fatal编程技术网

Android 将未选中项的颜色更改为多选列表视图

Android 将未选中项的颜色更改为多选列表视图,android,listview,background-color,multichoiceitems,Android,Listview,Background Color,Multichoiceitems,我有一个列表视图,带有简单列表项多选项适配器,当我选中其中一个复选框项时,这会取消选中其他复选框,直到这里为止,但我也想更改其他复选框的背景色 这是我的setadapter: final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_multiple_choice, android.R.id.text1, val

我有一个
列表视图
,带有
简单列表项
多选项
适配器
,当我选中其中一个
复选框
项时,这会取消选中其他
复选框
,直到这里为止,但我也想更改其他
复选框的
背景色

这是我的setadapter:

final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
        android.R.layout.simple_list_item_multiple_choice, android.R.id.text1, values);
        listView.setAdapter(adapter);
        listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
final ArrayAdapter adapter=新的ArrayAdapter(此,
android.R.layout.simple\u list\u item\u多选,android.R.id.text1,值);
setAdapter(适配器);
listView.setChoiceMode(listView.CHOICE\u MODE\u MULTIPLE);

好的,我找到了一个解决方案,这里是对相同问题的解答

SparseBooleanArray checked = listView.getCheckedItemPositions();
                int size = checked.size(); // number of name-value pairs in the array
                for (int i = 0; i < size; i++) {
                    int key = checked.keyAt(i);
                    boolean value = checked.get(key);
                    if (value) {
                        row = listView.getChildAt(i);
                        row.setBackgroundColor(Color.parseColor("#33B5E5"));
                    }else{
                        row = listView.getChildAt(i);
                        row.setBackgroundColor(Color.parseColor("#F0F0F0"));
                    }
                }
SparseBooleanArray checked=listView.getCheckedItemPositions();
int size=checked.size();//数组中的名称-值对数
对于(int i=0;i
行是视图全局变量,谢谢