选中元素true时更改ListView行颜色

时间:2017-10-28 08:31:30

标签: android listview xamarin row background-color

在drawable文件夹中,我有以下XML:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:state_checked="true"
    android:drawable="@color/checkedItem" />
  <item android:state_pressed="true"
    android:drawable="@color/pressedItem" />
</selector>

在我的自定义适配器XML中:

android:background="@drawable/checked">

活动:

private void ListViewHydromer_ItemClick(object sender, AdapterView.ItemClickEventArgs e)
{
   listViewHydromer.SetItemChecked(e.Position, true);
}

但是当检查项目时 - 颜色不适用于它。

2 个答案:

答案 0 :(得分:0)

您正在参考已登记的android:background="@drawable/checked">,并且您没有在您的drawable中提及任何名为checked的名称。用以下内容替换您选中的项目:

<item android:state_checked="true" android:name="checked" android:drawable="@color/checkedItem"/>

答案 1 :(得分:0)

就我而言,我刚刚改变了

android:state_checked="true" to android:state_checked="false"