如何在列表视图中禁用选择高亮显示xamarin.forms android

问题描述:

我已经使用xamarin.forms创建了列表视图,我正在寻找一种不突出显示单元格的同时敲击列表视图的方法。如何在列表视图中禁用选择高亮显示xamarin.forms android

请检查下面的图像。 enter image description here

感谢您的ListView SelectedItem事件处理程序提前:)

,你可以这样做:

listview.SelectedItem = null; 

这会给你上点击亮点,但国家只会是短暂的。

在你的情况,我想你会喜欢这个,因为你使用2 Image s而不是Button s用于右边的箭头,用TapGestureRecognizer。你知道ButtonImage属性吗?当点击Cell中的Button时,Cell选定状态不应改变。

+1

当我点击图像时,它不会更改列表视图状态。它只会在我错误地点击图像以外的列表时发生改变,而且看起来很奇怪。我试过你的解决方案,它不工作..改变了视图单元格的背景颜色,它做了伎俩.. :)感谢您的帮助.. :)我不知道按钮有图像属性也感谢。 – 2014-09-13 06:18:42

+1

ItemSelected不可为空 – Alexandre 2014-10-02 15:09:09

+2

您的意思是.SelectedItem ItemSelected是事件。 SelectedItem是属性。 – MemeDeveloper 2015-03-16 15:19:41

只是把这个在您的自定义主题:

<item name="android:colorActivatedHighlight">@android:color/transparent</item> 
+1

谢谢。有用。在droid项目中添加此行的默认文件位于Resouces/values/styles.xml中 – eka808 2017-03-19 19:16:37

你不能,你必须实现一个自定义的渲染。如果您只将选定的项目设置为空白,它将删除选定的颜色。但是,您将首先选择该项目,然后再次取消选择(多重事件),但您没有看到它:-)。如果您在Windows Phone上启用了倾斜效果,则由于所有事件都会发生倾斜!

但我希望看到Xamarin Forms团队在listview上实现CanSelect属性。

我想向你推荐另一种解决方案。 您可以添加:

IsEnabled="False" 

在您的列表视图小部件。 在我的情况下,这个解决方案效果很好。

+0

谢谢。对我很好! – Max 2017-10-06 08:52:09

+0

@TeoVr81这将禁用列表中的每个事件,而不仅仅是选择例如你将无法滚动 – Scarnet 2018-01-17 09:06:16