我正在使用兼容包来实现API级别的CursorLoader< 11 根据{{3}}和此doc以及此精彩answer,我已导入支持包并实施tutorial,但接下来我必须致电:
getSupportLoaderManager()
并且为此必须扩展FragmentActivity,然后从Activity Context调用,但我已经扩展了ListActivity,并且想要进行静态调用以获取LoaderManager,如下所示:
FragmentActivity.getSupportLoaderManager()
显然,这是一种获得LoaderManager.LoaderCallbacks< 11,这就是文档所说的:
要管理片段和加载器,必须使用FragmentActivity.getSupportFragmentManager()和FragmentActivity.getSupportLoaderManager()方法(而不是getFragmentManager()和getLoaderManager()方法)。
但它给出了这个编译时错误:
Cannot make a static call to a non-static method
对于FragmentActivity,LoaderManager,getSupportLoaderManager()在这里不是静态的,这解释了错误,但为什么Doc显示静态调用...我现在很困惑......
请帮忙!
答案 0 :(得分:11)
如果您扩展Loader
,则只能使用Android兼容性库中的FragmentActivity
框架。考虑将您的ListActivity
转换为ListFragment
和FragmentActivity
。