【问题标题】:Show a ResultSet (not a cursor) in Listview在 Listview 中显示 ResultSet(不是光标)
【发布时间】:2012-10-24 11:12:55
【问题描述】:

我从远程数据库得到一个结果集,如下所示:

String queryString = "select n as name, a as address from sometable";
ResultSet rs = st.executeQuery(queryString);

我想在 ListView 中显示一些数据:名称、此结果中的地址以及用户检查某些行的​​复选框。检查的行将保存在本地数据库(SQLite)中以供进一步使用。

请帮我找到这些问题的答案:

我应该如何使用 ResultSet 在 ListView 中显示,我读到使用 SimpleCursorAdapter 我应该有一个 Cusor,而不是一个 ResultSet。如何将 ResultSet 转换为 Cursor?

还有一个问题。我是否需要为复选框提供 1 个额外字段(例如“ch_”)?如果用户按下列表中的某个项目,它会更改“ch_”中的值吗? 提前谢谢你。

【问题讨论】:

    标签: android android-listview resultset simplecursoradapter


    【解决方案1】:

    您可以将您的ResultSet 转换为您的自定义对象的ArrayList,然后您可以从BaseAdapter 扩展以利用列表数据,而不是使用SimpleCursorAdapter

    【讨论】:

      【解决方案2】:

      如果rs 是光标,那么查看您的查询会得到名称rs.getString(0) 和地址rs.getString(1)

      关于第二个问题,你需要这个复选框做什么?

      【讨论】:

      • 我将从远程表中获取一些数据,用户将检查他想要获取的行,我会将这些行放在本地表(sqlite)中,并将它们进一步用于其他操作。这就是为什么我认为我需要额外的布尔字段。
      • 我从未使用过 ResultSet 但在这里developer.android.com/reference/java/sql/… 你可以看到它有methon getString(int)。你试过了吗?
      • 所以我应该尝试将数据从 ResultSet 逐行传递到 Cursor 吗?对不起,我在 java 和 android 中完全是新手。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-17
      • 1970-01-01
      • 2010-12-28
      • 1970-01-01
      相关资源
      最近更新 更多