Android手机底部安全区域问题

这个问题主要体在全面屏手机上,统称为安全区域

直接上图(不知道怎么调正,😓)

这个问题刚开始困扰了我好久, 但是去看抖音发现它底部也是有安全区域的,才知道在Android上是无法完全消除的 (第二种的方法是可以消除掉的,但是会影响用户体验) 而抖音也该也是采用的第三种方式 

我一共找到了3种方案里解决这个问题

从最简单的来说

第一种:最物理的方式

关闭手机导航手势

 第二种:这种对用户的体验效果不是很好(个人态度)

plus.navigator.hideSystemNavigation(true)

这种方法虽说有一定的可行性,但是唯一的缺点就是,每次退出需要从底部滑动两次,就跟退出手机游戏界面一样(例如:王者荣耀)

第三种:这个解决的也不是很好

let color, ac, c2int, win;
  	color = plus.android.newObject("android.graphics.Color")
  	ac = plus.android.runtimeMainActivity();
    c2int = plus.android.invoke(color, "parseColor", "#000000")
  	win = plus.android.invoke(ac, "getWindow");
  	plus.android.invoke(win, "setNavigationBarColor", c2int)

 这种其实就是在修改底部安全区域颜色

但是这种方法存在的最大问题就是页面跳转时会出现无法跳转,或者白屏、闪屏的问题

直接上效果

最后发现这个方法不能平凡执行

解决方式就是让它只执行一次

onLaunch: function() {
  uni.hideTabBar()    
  // 只是被封装了,用法还是那样
  this.$utils.upTabColor("#000000")
  // 禁止横屏
  plus.screen.lockOrientation("portrait-primary")
},

这样就不会出现白屏问题

归根结底最好的方式还是最物理的方法,毕竟代码能力有限,无法去操作系统问题

哦对了;华为因为是鸿蒙系统,没有这个东西呢 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值