2***@qq.com
2***@qq.com
  • 发布:2024-10-17 14:53
  • 更新:2024-12-29 10:55
  • 阅读:101

android下获取系统导航栏高度

分类:uni-app
const main = plus.android.runtimeMainActivity()  
const windowMe = main.getWindow()  
plus.android.importClass(windowMe)  
const decorView = windowMe.getDecorView()  
plus.android.importClass(decorView)  

const windowInsets = decorView.getRootWindowInsets()  
const WindowInsets = plus.android.importClass(windowInsets)  
const insets = windowInsets.getInsets(WindowInsets.Type.navigationBars())  
const navigationBarHeight = plus.android.getAttribute(insets, 'bottom')  
console.log(navigationBarHeight) // 取到的是物理像素值,需要除以dpr转为逻辑像素值
1 关注 分享
1***@qq.com

要回复文章请先登录注册

1***@qq.com

1***@qq.com

老哥 能问一下 安卓11以下版本的话怎么获取吗?安卓11以下的版本使用上述代码会报错WindowInsets.Type.navigationBars is undefined
2024-12-29 10:55
2***@qq.com

2***@qq.com (作者)

回复 靐齉齾麤龖龗 :
是的
2024-10-17 17:42
靐齉齾麤龖龗

靐齉齾麤龖龗

回复 2***@qq.com :
哦,你是说是底部按返回还是回到桌面那些吗?
2024-10-17 16:38
2***@qq.com

2***@qq.com (作者)

回复 靐齉齾麤龖龗 :
你这个是状态栏,不是导航栏
2024-10-17 16:35
靐齉齾麤龖龗

靐齉齾麤龖龗

uniapp 的话
```js
const windowInfo = uni.getWindowInfo()
uni.showToast('系统导航栏高度:' + windowInfo.statusBarHeight)
```
也能获取到
2024-10-17 15:12