Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/184.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.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 从没有适配器的游标加载程序获取更新的数据_Android_Android Contentprovider - Fatal编程技术网

Android 从没有适配器的游标加载程序获取更新的数据

Android 从没有适配器的游标加载程序获取更新的数据,android,android-contentprovider,Android,Android Contentprovider,我的数据有一个sqlite、contentprovider设置。现在我知道所有这些都可以正常工作,因为我有一个实现LoaderCallback接口的活动,并且有一个ListView,如果数据发生更改,它将通过适配器进行更新 除此之外,我还有一个与ListView设置相同的活动。 在本活动中,我希望收集contentprovider通过ArrayList中的CursorLoader提供的数据,以填充和更新两个不同的视图,这两个视图不是adapterViews 我得到的数据如下: @Override

我的数据有一个sqlite、contentprovider设置。现在我知道所有这些都可以正常工作,因为我有一个实现LoaderCallback接口的活动,并且有一个ListView,如果数据发生更改,它将通过适配器进行更新

除此之外,我还有一个与ListView设置相同的活动。 在本活动中,我希望收集contentprovider通过ArrayList中的CursorLoader提供的数据,以填充和更新两个不同的视图,这两个视图不是adapterViews

我得到的数据如下:

@Override
public Loader<Cursor> onCreateLoader(int i, Bundle bundle) {
    // Must include the _id column for the adapter to work
    String[] projection = new String[]{VitalSet.COL_TYPE};

    return new CursorLoader(
            this,
            CicelyContentProvider.CONTENT_URI_DISTINCT,
            projection,
            null, null, null);
}

@Override
public void onLoadFinished(Loader<Cursor> cursorLoader, Cursor cursor) {
    while(cursor.moveToNext()) {
        cursorText.append(cursor.getString(cursor.getColumnIndex(VitalSet.COL_TYPE)));
    }
}

@Override
public void onLoaderReset(Loader<Cursor> cursorLoader) { }
如果我启动活动,这可以正常工作,但是如果我添加新数据,textView不会得到更新。如果我不使用适配器,或者没有适配器就无法获取更新的数据,是否需要实现一些listenerMethod

我在contentprovider查询和insertmethods中有必要的通知


如有任何建议,我们将不胜感激。

ContentResolver.registerContentObserver或类似内容是的,谢谢。这很有效,但我的上述方法也有效,我的错误是我的查询和插入有不同的URI。这就是更新无法识别的原因。哦,对不起,我忘记了CursorLoader在其游标上注册ContentObserver,请参阅CursorLoader.loadInBackground方法
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_show_overview);

    getLoaderManager().initLoader(0, null, this);
}