如何通过Intent将数据从LoaderManager传递到另一个活动?

时间:2012-10-18 20:44:08

标签: android android-cursorloader

我是一个Android新手,我正在尝试更新使用游标的代码(工作!),以便它使用CursorLoader。我的应用程序以带有ListView的Activity开始,有三个选项,Beginning,Intermediate和Advanced。根据选择的项目,我想用另一个ListView打开第二个Activity。该ListView将从SQLite数据库填充,其中所有项目的级别为例如Beginning。在stackoverflow的其他地方,有人建议我在这两个活动之间插入一个Activity来处理实际的数据检索。所以现在我有三个活动。一个有一个有三个选择的ListView。那个通过Intent将String发送到第二个Activity。第二个Activity查询数据库并从匹配选择到CursorLoader的级别的所有记录中检索一列。这是我的问题。我想将所有这些数据传递给我的第三个Activity,以便数据可以在ListView中显示。但是如何从CursorLoader中获取数据?我想我想做点什么:

Intent data = new Intent(getApplicationContext(), com.MyKnitCards.project.StitchList.class);
Bundle dataBundle = new Bundle();
dataBundle.getStringArrayList(myData);

其中myData是CursorLoader的数据ArrayList。我不知道该怎么做。我想知道我是否想使用LoaderManager来实现这一点,但我也不知道如何做到这一点。

提前致谢!

1 个答案:

答案 0 :(得分:1)

我将摆脱执行数据检索的中间人Activity,并在显示数据的Activity中执行此操作。 CursorLoader在后台自动加载,因此不会冻结您的UI,这样您就不必担心在活动之间传递数据。