Android:自定义视图的事件处理程序? (问题修订)

时间:2009-10-12 22:48:13

标签: android listview event-handling click

陈述问题(已经由Mark回答 - 答案是使用getTag()):

假设我有一个带有自定义布局的ListView,每个行都有一个ImageView和一个TextView。现在,当点击时,我能够根据视图确定哪个图像和哪个文本视图被点击,但如果我必须传递此信息来说出另一个活动,我需要该位置。但是,如何在列表视图中点击项目的位置?

已修订问题:

我正在执行以下操作:使用ImageView和TextView自定义ListView。我想根据是否单击图像或文本元素执行不同的操作。现在,我可以采取两种方法来执行事件处理:

方法#1:将OnItemClick侦听器附加到ListView中的项目并执行适当的操作。 问题:单击哪个元素(图像或文本)仍然存在问题。我如何确定这条信息然后采取必要的行动?

方法#2:在每个列表视图项目中分别将OnClick侦听器附加到图像和文本,然后执行适当的操作。 问题:我对这种方法的表现持高度怀疑态度。除此之外,当执行单击时,项目的行不会突出显示,这使得它非常不直观。在这种情况下,如何突出显示行?

有什么建议吗?

1 个答案:

答案 0 :(得分:5)

通过setTag()将位置附加到行(或其中一个小部件),并在需要时通过getTag()检索。