1
  • 最佳答案

    已经解决,Presentation源码是通过下面来判断屏幕参数是否改变的

    由于不知名原因(可能是安卓板厂商提供的熄屏api偷偷修改了参数?)

    private boolean isConfigurationStillValid() {
        DisplayMetrics dm = new DisplayMetrics();
        mDisplay.getMetrics(dm);
        return dm.equalsPhysical(getResources().getDisplayMetrics());
    }
    

    所以,只需要在Presentation准备show时,判断是否更改并改回副屏原本的参数即可

    private void cloneDisplayMetrics() {
        DisplayMetrics dm = new DisplayMetrics();
        getDisplay().getMetrics(dm);
        getResources().getDisplayMetrics().setTo(dm);
    }
    


    1374278154541199360  评论     打赏       橘浩
    • 目前感觉是AutoSize框架改变了DisplayMetrics的问题,可能在创建Presentation onCreate之后恰好发生了适配,导致屏幕参数改变引发的问题,目前尚未找到解决方法

      1374278154541199360  评论     打赏       橘浩
      • Presentation 里加视频图片混合的轮播图,你有试过吗/

        1593141965622534146  评论     打赏       Aridvian
        • 橘浩  回复 @Aridvian
          还没有,就是一个dialog,应该也是一样的
          橘浩 2025-04-27 11:42   回复 1374278154541199360
      相关问题
      fred · UI布局
      2020-03-31 00:24 402 5
      2020-08-13 18:06 728 2
      阿肥 · UI
      2021-12-13 17:15 257 2
      阿淳言出必行 · android / ui
      2022-03-31 17:35 135 2
      坐在岸边等日出的仙人掌 · Android / UI设计 / 筛选弹窗
      2023-03-09 16:12 57 3
      资质平平 · Android
      2025-02-20 09:14 92 100
      尖沙咀-段坤 · 项目
      2025-01-06 23:39 18 2