在android中找不到getSupportLoaderManager

时间:2017-04-18 11:08:13

标签: java android android-fragments android-lifecycle loader

我正在创建加载程序来处理android生命周期中的网络,但无法处理getSupportLoadManagers。

LoadManager loadManager = getSupportLoadManager();

但此方法以红色显示。如何解决这个问题?感谢

2 个答案:

答案 0 :(得分:1)

getSupportLoaderManager()FragmentActivity中的方法。您应该在FragmentActivity的实例上或FragmentActivity内执行该操作:

public class MyActivity extends FragmentActivity {

    public void someMethod() {
        // this is ok, because you are in a `FragmentActivity`
        getSupportLoaderManager();
    }
}

来自另一个班级:

public class Foo {

     public void someMethod(FragmentActivity fragmentActivity) {
         // This class is not a descendant of `FragmentActivity`
         // should use `fragmentActivity` instance to access `LoaderManager`
         fragmentActivity.getSupportLoaderManager();
     }
 }

注意AppCompatActivityFragmentActivity的后代。

答案 1 :(得分:0)

问题还可能是您正在使用片段,但Android Studio(A.S.)无法将其识别为片段活动。对我来说,我的AppCompatActivity中确实有getSupportLoaderManager,但它仍然无法正常工作。为什么? Android Studio识别AppCompatActivity时出现错误。为了解决这个问题,我必须安装API 7。因此,我认为您确实需要使用片段活动或类似AppCompatActivity的后代,但还要确保A.S./应用程序能够将活动识别为片段。