【问题标题】:How to implement stable ids on a custom cursor adapter?如何在自定义光标适配器上实现稳定的 id?
【发布时间】:2013-05-28 02:03:52
【问题描述】:

我有一个列表视图,其中每一行都是一个复选框。为了知道选择的行,我认为使用稳定的 ID 会帮助我。但是我还没有找到任何可以帮助我的教程或示例。有什么建议?我目前正在覆盖 bindView 和 newView 以进行回收。

【问题讨论】:

  • 提供更多信息。会有所帮助。您的确切问题是什么以及您在实施时面临什么问题。
  • 我需要将选中的复选框存储在数据库中。而且我想从 oncreate 方法中执行此操作,因为我的主片段上有一个按钮。然后我想使用方法 lv.getCheckedItemIds() 我可以恢复这些项目。我不确定如何在我的自定义适配器中设置稳定的 id,所以我可以从数据库中存储我的复选框的 id。也许有更好的方法,我不知道。我对 android 有点陌生。
  • 请注意,由于我重写了 bindView 和 newView 方法,所以我根本没有使用该位置。我更喜欢获取项目的 ID,而不是使用复选框显示。

标签: android android-listview android-checkbox


【解决方案1】:

使用_id 列创建表并将其用作ID。 link

【讨论】:

    【解决方案2】:

    只需在getView()中使用getPosition(),在父视图上调用setTag((Integer)cursor.getPosition()),就可以在onItemClickListener中处理,使用getTag()拉取位置,然后然后在光标中查找。

    【讨论】:

    • 感谢您的回答,但这并不能回答我的问题。而且我没有使用getView(),而是使用newView() 和bindView()。从这里我无法访问该职位。我只是想知道如何使用稳定的 id。
    • 这个位置可能是一个稳定的id,你可以在bindView和newView中访问它,你仍然可以使用getTag/setTag。否则,只需像其他人所说的那样在您的数据库中添加一个 _id 列。
    猜你喜欢
    • 2015-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多