动态获取元素的id

时间:2017-04-07 19:18:36

标签: android android-layout

我有一个名为item的简单布局 linearlayout元素textViewimageButton

两次

然后,我使用此布局生成列表(将其膨胀10次)。 我不能在多个元素上设置相同的ID,所以我没有设置任何。

在每个布局item中,我可以点击

  • 的LinearLayout
  • first imageButton
  • second imageButton

如何知道,哪个linearlayout,图像按钮被点击了?

1 个答案:

答案 0 :(得分:1)

  

我无法设置相同的ID

是的,你做不到。但您可以使用generateViewId()生成一个:

来自docs:

  

生成适合在setId(int)中使用的值。该值不会与构建时由aapt为R.id。

生成的ID值冲突
view.setId(View.generateViewId());

而且你可以完全参考你的观点。

但这不应该是你应该考虑坚持的解决方案。相反,您应该更愿意将这些逻辑委托给RecyclerView