如果使用listChoiceBackgroundIndicator项样式,则禁用Android上的选择

时间:2017-04-11 15:00:52

标签: android listview xamarin.android android-styles

我有一个ListView,我将selection停用:

void OnSelection (object sender, SelectedItemChangedEventArgs e)
{
  if (e.SelectedItem == null) {
    return; //ItemSelected is called on deselection, which results in SelectedItem being set to null
  }
  ((ListView)sender).SelectedItem = null;
}

在我的Android主题中,我已经在我的风格中定义了以下内容

<item name="android:listChoiceBackgroundIndicator">@color/primaryLight</item>

如果我这样做,尽管未选择所选状态,项目仍会在视觉上被选中。

目标是拥有一个样式,适用于两种类型:可选择的列表视图项目和不可选择的列表视图项目。如果我使用((ListView)sender).SelectedItem = null;,则用于显示所选状态的背景应该恢复为默认值。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

试试这个

((ListView)sender).requestLayout();
((ListView)sender).clearChoices();

希望这会有所帮助。谢谢。