虽然我无法复制此错误,但我仍然会收到一些崩溃报告。我认为为我的列表适配器添加一个空检查会修复它,但它仍然会发生。我错过了什么?
完整的堆栈跟踪:http: //pastebin.com/Q6GwDU7Q
public void onLoaderReset(Loader<Cursor> loader) {
final int id = loader.getId();
switch (id) {
case LOADER_ID1:
if (mAdapter != null)
mAdapter.changeCursor(null); //Line 512 where stacktrace references
break;
case LOADER_ID2:
//Other code here
break;
default:
throw new InvalidParameterException("id=" + id);
}
}
mAdapter 在 onActivityCreated 中初始化,但我意识到在键入此内容时我从未释放它,也许我应该在 onDetach 中执行它?mAdapter 附加到由 ListFragment 设置的 ListView。我将适配器光标设置为 null 以清除我拥有的列表。所以是的,我忽略了什么?