XPopup icon indicating copy to clipboard operation
XPopup copied to clipboard

XPopup.Builder.hasStatusBar属性并且其为false状态栏有一瞬间的隐藏动画

Open extfff opened this issue 2 years ago • 3 comments

XPopup版本 2.8.3

Andorid版本:10

描述你的问题 1、配置主工程代码AppTheme,添加属性true 2、观察未设置isViewMode(true)的dialog并且设置了hasStatusBar(false)的表现,

结果: 通知栏会有一个隐藏动作而不是一直不存在通知栏

extfff avatar Jun 15 '22 06:06 extfff

已确定问题所在行:FullScreenDialog 86行

//处理VIVO手机8.0以上系统部分机型的状态栏问题和弹窗下移问题 boolean isPortrait = getContext().getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT; if(isFuckVIVORoom() && isPortrait){ getWindow().setLayout(XPopupUtils.getAppWidth(getContext()), Math.max(XPopupUtils.getAppHeight(getContext()), XPopupUtils.getScreenHeight(getContext()))); getWindow().getDecorView().setTranslationY(-XPopupUtils.getStatusBarHeight()); }

替换2.4.4版本写法即可解决此问题 if(isFuckVIVORoom()){ getWindow().getDecorView().setTranslationY(-XPopupUtils.getStatusBarHeight()); getWindow().setLayout(WindowManager.LayoutParams.MATCH_PARENT, Math.max(XPopupUtils.getAppHeight(getContext()), XPopupUtils.getScreenHeight(getContext()))); } else { getWindow().setLayout(WindowManager.LayoutParams.MATCH_PARENT, Math.max(XPopupUtils.getAppHeight(getContext()), XPopupUtils.getScreenHeight(getContext()))); }

extfff avatar Jun 15 '22 08:06 extfff

试试最新版本

junixapp avatar Jul 24 '22 14:07 junixapp

最新版本实测不行, 真机p30, 雷电模拟器也可以复现 上方代码clone代码尝试, 晚点试试行不行

试试最新版本

liangrk avatar Aug 07 '22 13:08 liangrk