单击Android ListView行时如何执行元素的选择性突出显示?

时间:2013-10-23 16:20:40

标签: android android-listview

我在我的ListView中实现了字母部分标题,方法是在我的TextView行布局中添加一个额外的ListView元素,并通过切换它{{1}来使用这个额外的TextView元素作为标题必要时在我的自定义CursorAdapter中使用属性。因此,我的行布局层次结构由垂直setVisibility内的2 TextView组成。

我希望节标题独立于它所包含的行元素。

最初,单击标题将执行其所包含的行元素的操作,例如,如果我的列表包含元素'Apple''Apricot'和'Avocado',则单击标题,标记为因为'A'会执行它所连接的行的任何动作,在这个例子中它将是'Apple'。我设法通过将表示标题的LinearLayout设置为可点击来防止这种情况发生。

然而,我仍然感到烦人的视觉效果,当我点击“Apple”时,突出显示我在点击时的选择会突出显示整行,因此两个TextView都会突出显示。 Here是一个显示我的意思的例子。在此示例中,当我单击“Daft Punk”时,附加的标题“D”也会突出显示。无论如何设置它只是为了突出显示第二个TextView

1 个答案:

答案 0 :(得分:0)

不支持非hacky方式。如果要使用部分正确实现列表视图,则使用支持的多视图类型策略会有大量示例。

以下是实现和执行所需内容的lib的两个问题:

Android listview groups Creating categories in a ListView?

推广自己的教程:

http://w2davids.wordpress.com/android-sectioned-headers-in-listviews/

如果你确实想要走这条hacky路线,在这篇文章的评论中,他提到利用焦点/点击事件行为错误拦截触摸。 Cyril Mottier