【发布时间】:2017-03-15 18:30:34
【问题描述】:
我一直在尝试解决我的问题,但我没有找到它......所以我正在寻求你的帮助。
我在 xamarin 上工作以制作一个 android 应用程序,但我不使用 Xamarin.Forms(如果我在开始项目时知道它,我会使用它
我会直截了当,如果你有什么问题,尽管问我。
所以我有一个列表视图,我可以在其中选择 2 个或更多项目:
private void _listViewIntervention_ItemClick(object sender, AdapterView.ItemClickEventArgs e)
{
_intervention[e.Position].IsSelected = !_intervention[e.Position].IsSelected;
if (_intervention[e.Position].IsSelected)
e.View.SetBackgroundColor(Android.Graphics.Color.Rgb(255, 127, 127));
else
e.View.SetBackgroundColor(Android.Graphics.Color.Rgb(230, 230, 230));
_numberInterventionSelected.Text = _intervention.FindAll(elem => elem.IsSelected == true).Count().ToString();
}
那东西有效,但如果我有一个包含 20 个项目的列表视图,即我选择了 3 个项目,如果我滚动列表视图,一切都会受到干扰,我的 3 个突出显示的行将不再存在,突出显示将在另一行我从来没有选择过。
我认为这不是很明显,可能会很模糊。
IMO 我在执行“e.View.SetBackgroundColor”时并没有改变好事,但我尝试了很多从未奏效的东西。 顺便说一句,我可能不会以最好的方式去做我想做的事情。
我想要的结果是当我滚动列表视图时,没有任何变化,所以我可以选择列表视图的第一项和最后一项,即
我在我身边再次搜索,但我相信你知道...... 感谢阅读,祝您有美好的一天!
【问题讨论】:
标签: android listview xamarin listviewitem