如何在ListActivity中获取LoaderManager

时间:2011-10-20 10:33:43

标签: android android-loadermanager

我正在使用兼容包来实现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显示静态调用...我现在很困惑......

请帮忙!

1 个答案:

答案 0 :(得分:11)

如果您扩展Loader,则只能使用Android兼容性库中的FragmentActivity框架。考虑将您的ListActivity转换为ListFragmentFragmentActivity