【问题标题】:getLoaderManager in Fragments is deprecated片段中的 getLoaderManager 已弃用
【发布时间】:2018-09-01 12:53:38
【问题描述】:

更新后,我发现getLoaderManager 已被弃用,但我找不到应该使用它来代替。
如何获得LoaderManager?或者我应该使用什么来代替Loaders?

【问题讨论】:

标签: android android-support-library loader


【解决方案1】:

getLoaderManager 已被弃用,请改用 LoaderManager getInstance:

LoaderManager.getInstance(this).initLoader(0, null, this);

【讨论】:

    【解决方案2】:

    自 Android P (API 28) 起,加载程序已被弃用。在处理 Activity 和 Fragment 生命周期时处理加载数据的推荐选项是使用 ViewModel 和 LiveData 的组合。ViewModel 可以像 Loaders 这样的配置更改,但样板更少。 LiveData 提供了一种生命周期感知的数据加载方式,您可以在多个 ViewModel 中重复使用。

    【讨论】:

      【解决方案3】:

      已弃用的getLoaderManager 已替换为getSupportLoaderManager。试试:

      getSupportLoaderManager().initLoader(LOADER_NOTES, null, this); 
      

      在 API 28 中为我工作。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-02-09
        • 1970-01-01
        • 2022-10-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-02-11
        相关资源
        最近更新 更多