java - 是否可以使用其列表项 id 而不是 android 中的列表项位置来选择自定义 ListView 项?

标签 java android

是否可以获取列表项的 id,而不是通过其位置获取列表项?因为我面临的问题是:我使用自定义 ListView 。我通过单击按钮对列表项进行排序。列表项按新顺序排序后,如果我单击第一项,则在排序之前选择原始项目的列表项。我还使用数据库来获取列表项点击。我将数据库 ID 与所选列表项位置进行匹配。怎么解决呢?非常感谢任何帮助,并提前致谢...

最佳答案

我认为最好的方法是使用 tag 属性并将其设置为等于您要在从数据库检索数据时使用的任何 id:

view.setTag(myId);

然后,当单击 View 时,在监听器中,您可以简单地检索标签值而不是位置:

int id = view.getTag();

由于 Tag 是对象类型,您可能需要进行一些转换,但这将满足您的需要。如果您想更进一步,我建议使用 Model 类来保存 ID 值,然后您只需将该对象设置为标签,并在检索时引用模型的所有属性(而不仅仅是 ID 本身)。

希望这有帮助。 布赖恩

关于java - 是否可以使用其列表项 id 而不是 android 中的列表项位置来选择自定义 ListView 项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8005761/

相关文章:

java - Intent 不断返回空

android - 如何检测android设备是64位还是32位处理器?

java - Android 应用程序内存问题

Android Make Disappear 或去除 map 上的蓝点 v2

java - 绘图不显示

java - 如何使用 netbeans dist 分发 Java3d jar 文件?

java - 了解重写如何与 Java 优先级队列中的compareTo 配合使用?

android - 丢失旧 keystore 时该怎么办?

JavaFX类设计

java - 错误插件: "org.eclipse.text" in eclipse 4. 3