当前位置: 首页 > article >正文

Android 折叠屏问题解决 - 展开后布局未撑开

一、说明

正常情况下手机展开折叠时页面会销毁重建,但可以通过参数设置禁止销毁重建。

android:configChanges="orientation|screenSize|screenLayout|smallestScreenSize"

但设定完后发现 RecyclerView 中的 item 没有重新按照新的尺寸进行改变,比如折叠时是较窄的,展开后还是窄的。

二、解决方案

当页面重新创建时强制重新创建 adapter。

public class MineFragment extends Fragment    
    
    private MineAdapter adapter;

    @Override
    public void onConfigurationChanged(@NonNull Configuration newConfig) {
        super.onConfigurationChanged(newConfig);
        if (adapter != null) {
            adapter.forceUpdate();
        }
    }
}


public class MineAdapter extends RecyclerView.Adapter<MyHolder> {

    private List<Entity> entities;

    public void forceUpdate() {
        if (EmptyUtils.isNotEmpty(entities)) {
            entities = new ArrayList<>(entities);
            notifyDataSetChanged();
        }
    }
}

搞定!


http://www.kler.cn/a/443714.html

相关文章:

  • 一个比RTK或redux更轻量级更易使用的 React 第三方状态管理工具库的配置与使用
  • 32. 线程、进程与协程
  • 深度学习实战车辆目标跟踪【bytetrack/deepsort】
  • k8s迁移——岁月云实战笔记
  • 【游戏设计原理】22 - 石头剪刀布
  • 【读书笔记】《论语别裁》寂寞的享受
  • 【图像配准】方法总结
  • HarmonyOS NEXT 应用开发实战:音乐播放器的完整实现
  • Vue|scoped样式
  • mapboxGL中室内地图的实现
  • PowerMILL 客制化宏 - 命令关键字
  • 应用如何借用manifestxml追加gid权限
  • PostgreSql-学习06-libpq之同步命令处理
  • go 自己写序列化函数不转义
  • UE5 角色换新枪械的偷懒办法
  • UE5 Lyra项目源码分析-角色配置说明
  • WebRTC服务质量(04)- 重传机制(01) RTX NACK概述
  • 简易记事本开发-(SSM+Vue)
  • Navicat 17 功能简介 | SQL 美化
  • 力扣题目解析--K个一组翻转链表
  • 042_Unscented Kalman Filter in Matlab无迹卡尔曼滤波
  • 对象的克隆 单例模式
  • sql递归查出某个值下的所有子集数据
  • 在微服务架构中,处理消息的中间件是实现服务间异步通信的关键组件。以下是几种常见的消息中间件及其特点、优点和缺点
  • 重庆大学《2024年844自动控制原理真题》 (完整版)
  • Arrays.sort和Collections.sort排序基本用法