【问题标题】:getSupportLoaderManager not found in android在android中找不到getSupportLoaderManager
【发布时间】:2017-04-18 11:08:12
【问题描述】:

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

LoadManager loadManager = getSupportLoadManager();

但是这个方法显示为红色。如何解决这个问题?谢谢

【问题讨论】:

  • 请在问题内写代码,而不是作为外部链接截图。另外写在哪个类中这段代码? Activity、Fragment 还是...?
  • LoadManager loadManager=getSupportLoadManager()
  • 不是我的意思,我会帮助你,你下次让别人更容易。
  • 此方法在您编写的任何可能的类中都不可用。这就是为什么我问你在哪个课上写了这个方法
  • 使用 AppCompatActivity 或 FragmentActivity 来使用 getSupportLoaderManager() 或将 getLoaderManager() 与活动一起使用

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


【解决方案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 的后代。

【讨论】:

    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-24
      • 1970-01-01
      • 1970-01-01
      • 2017-07-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-25
      相关资源
      最近更新 更多