【发布时间】:2012-10-24 21:15:07
【问题描述】:
希望是我刚刚忘记或从未理解的简单 Java 问题。我一直在使用 Android 4.0 中的加载器。该程序按原样运行,但现在我正在寻找“下一个”部分。我想要一个标准的光标加载器和一个自定义的 AsyncTaskLoader。我被困在第 1 部分,试图将 cursorLoader 转换为 Loader 并返回它。
@Override
//public Loader<Cursor> onCreateLoader(int id, Bundle args) {
public Loader<Object> onCreateLoader(int id, Bundle args) {
if (id == LISTVIEWLOADER) {
String[] projection = { RunnerTable.COLUMN_ID,
RunnerTable.COLUMN_NAME };
CursorLoader cursorLoader = new CursorLoader(getActivity(),
FanContentProvider.CONTENT_URI, projection, null, null,
null);
return cursorLoader; //HERE IS THE PROBLEM
}
return null;
}
类型不匹配无法从 CursorLoader 转换为 Loader。
我相信可以让它工作
public class MainFragment extends ListFragment implements
//LoaderManager.LoaderCallbacks<Cursor>
LoaderManager.LoaderCallbacks
但不喜欢这个警告:
LoaderManager.LoaderCallbacks 是一个原始类型。对泛型 LoaderManager.LoaderCallbacks 的引用应该被参数化
感谢您提供的任何帮助。
【问题讨论】:
标签: java android casting android-loadermanager