如何使用Intents将Cursor对象传递给下一个Activity

时间:2012-12-26 07:14:58

标签: android android-activity cursor

我熟悉如何将Raw Data(String,int,boolean等)从一个Activity传递给另一个Activity。但是在我的应用程序中,我想将Cursor对象传递给下一个Activity。我正在从Activity班级扩展我的班级。

虽然我看过这个post。但它提供了共同的解决方案。但是,如其中一个用户所描述的,应该扩展Application class以传递游标数据。但我想扩展Activity课程。那么有没有办法将Cursor数据从一个Activity传递给另一个Activity。

注意 - 如果有帮助,我想使用光标的事实是,我是querying从列表中点击的特定联系人的数据并将其保存在游标中我想将相同的光标数据传递给下一个Actvity。

2 个答案:

答案 0 :(得分:3)

  • 在目标端重新查询光标。
  • 将光标数据存储在实现Parcelable的类中(当光标数据小时)。

以上两种方法都可以完美地工作,当你处理静态方法时,问题就会出现。

请记住:在需要时打开/关闭光标和数据库。

答案 1 :(得分:1)

您的Cursor只是您对SQLite执行的请求查询的引用,并且传递Cursor并不是一个好主意。虽然如果您的数据大小不多,那么您可以从Cursor获取数据并将其保存在任何集合中,并通过意图将其作为序列化形式传递给另一个活动。