【发布时间】:2013-05-21 03:15:16
【问题描述】:
问题:从第二个活动返回后,第一个活动的列表视图不反映第二个活动所做的数据库更改。如果我对代码进行微小的更改(以使模拟器满意)并重新启动应用程序,则列表视图现在可以准确地显示数据库更改上次会话期间所做的第二个活动。
应用的核心:
MainActivity: extends Activity implements LoaderManager.LoaderCallbacks<Cursor>
=>onCreate: SimpleCursorAdapter set; getLoaderManager().initLoader(LOADER_ID, null, this)
=>onResume: super.onResume(); getLoaderManager().restartLoader(0, null, this)
...天哪!问题是:initLoader 和 restartLoader 使用不同的加载器 ID。
在过去的五个小时里,这让我感到难过。为什么我要离开这个问题:在尝试解决我的问题时,我没有遇到这个答案(也许它太愚蠢了,无法建议某人寻找)但是对于下一个以这种独特方式绊倒的人,这是一个潜在的答案。
【问题讨论】:
-
studmann 你有没有设法解决这个问题。尽管我正确调用了 setNotificationUri() 和 notofyChanges(),但我的列表视图也没有刷新。
标签: android android-contentprovider android-cursoradapter android-loadermanager