Android 解决Fragment内的RecyclerView重建后内容不显示

布局

<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/rvContent"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
        app:spanCount="4"
        tools:listitem="@layout/item_gallery_scanning" />

</androidx.constraintlayout.widget.ConstraintLayout>

当重建或回到手机主页再返回至app时,数据不再显示,原因是数据加载在了未销毁的前一个fragment里面,然后被销毁了,而新建的fragment无数据。

  • 解决方法
    在RecyclerView渲染完成后再加载数据
rvContent.post(() -> {
            if(albumMediaCollection!=null)
                albumMediaCollection.load(imageFolder);
        });
posted @   指切  阅读(750)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示