Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 多个游标的LoaderManager/CursorLoader?_Android_Android Listview_Android Cursoradapter_Android Loadermanager_Android Cursorloader - Fatal编程技术网

Android 多个游标的LoaderManager/CursorLoader?

Android 多个游标的LoaderManager/CursorLoader?,android,android-listview,android-cursoradapter,android-loadermanager,android-cursorloader,Android,Android Listview,Android Cursoradapter,Android Loadermanager,Android Cursorloader,我有两个SQLite表: 服务:sid prim.key,workDesc,title ServiceInstance:ssid prim.key、sidfeign key、日期、工作注释、里程表 今天,我使用一个扩展SimpleCrsorAdapter的CustomAdapter向ListView提供这些表中的数据。但由于此方法已被弃用,我希望改用LoaderManager/CursorLoader重构代码 现在,我的困惑是,在ListView中,我想显示ServiceInstance表中的日

我有两个SQLite表: 服务:sid prim.key,workDesc,title ServiceInstance:ssid prim.key、sidfeign key、日期、工作注释、里程表

今天,我使用一个扩展SimpleCrsorAdapter的CustomAdapter向ListView提供这些表中的数据。但由于此方法已被弃用,我希望改用LoaderManager/CursorLoader重构代码

现在,我的困惑是,在ListView中,我想显示ServiceInstance表中的日期和Service表中的标题。比如: 2013-06-05定期服务

我该怎么做?从现在开始,当我使用扩展的SimpleCursorAdapter类时,我向构造函数发送一个游标。但在本例中,当我稍微更改了数据库结构时,我需要显示来自两个不同游标Service和ServiceInstance的数据

我在谷歌上搜索并阅读了一些教程,但没有发现任何类似的案例。但是在这里

在声明字符串数组列的步骤6 MainActivity.java:58中,我是否可以添加列名date和title,即使它们存在于不同的表中


另一个问题是,我不打算将这些数据提供给其他应用程序,那么创建ContentProvider到底有什么意义呢

在您的情况下,应该没有必要绑定到两个不同的游标,我不推荐这样做,因为在这种情况下,您必须编写自己的适配器。 请尝试跨表进行查询,检查以下起点:

对于第二个问题,如果您不想将ContentProvider公开给其他应用程序集:

<provider
    ....
    android:exported="false">
</provider>

在您的清单中

关于我的第二个问题,我想知道我应该传递给CursorLoader构造函数什么,因为它需要一个URI作为第二个参数?您的内容提供商中定义的URI,如果您需要一个示例,请告诉我,我正在度假,下周将回到计算机上。我知道,但我不打算将这些数据提供给其他应用程序,所以有可能不使用ContentProvider吗?还是创建一个更好?我会创建一个,只需将android:exported=false设置,使用起来很方便。一旦设置完成,您可以使用没有内容提供商的游标加载程序,但它需要一些解决方法。我不推荐。谢谢你的建议!变通办法不是我所追求的,所以我将创建一个,而不是导出它。只是需要找到一个好的例子,你有一个可用的吗?