在Android中为按钮添加自定义数据/属性

我现在正在做的是从API中提取一些数据,并为响应中的每个项目,我膨胀布局并添加另一个项目到布局。

我想要的是有一个“添加到collections夹”按钮,它将在SQLite数据库中添加当前项目。 我已经创建了DAO的东西和数据库处理,但有一件事让我烦恼。

当我点击按钮时,我无法分辨哪个项目ID的按钮被点击了。 我通常是一个Web开发人员,在网络上,一个按钮可以有data-xxx="yyy"属性,其中xxxyyy是开发人员想要的。

这在Android中可行吗? 我有另一个解决方案,但它更像是一个“黑客”:创建一个隐藏的TextView,它保存我的项目ID,并获取onClick事件来检查TextView(该按钮的兄弟)。 还有其他想法吗?

当我点击按钮时,我无法分辨哪个项目ID的按钮被点击了

您可以使用setTag()方法将任意数据添加到任何View 。 当您为新项目的布局充气时,获取该项目的ID并将其设置为与该项目对应的新膨胀布局中的Button的标记。 然后,您可以在ButtongetTag()使用getTag()方法检索标记(在您的情况下为id),并愉快地将其插入数据库中。