android - 如何确定安卓设备是否有缺口和软键?
问题描述
我试图找出一个android设备是否有软键和缺口。我可以通过这个逻辑找出软键的存在:
private fun hasSoftKeys(windowManager: WindowManager): Boolean {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
val d = windowManager.defaultDisplay
val realDisplayMetrics = DisplayMetrics()
d.getRealMetrics(realDisplayMetrics)
val realHeight = realDisplayMetrics.heightPixels
val realWidth = realDisplayMetrics.widthPixels
val displayMetrics = DisplayMetrics()
d.getMetrics(displayMetrics)
val displayHeight = displayMetrics.heightPixels
val displayWidth = displayMetrics.widthPixels
return realWidth - displayWidth > 0 || realHeight - displayHeight > 0
} else {
return false
}
}
但是对于带有notch的设备来说它失败了。任何帮助将不胜感激。
解决方案
推荐阅读
- java - Eclipse 无法导入我的战争文件 (JAXB NoClassDefFoundError)
- ios - SF Pro 显示字体在 SwiftUI 视图中不起作用
- c - C定义中~的含义
- docker - 如何在 docker 容器内跟踪 MacOS 系统日志?
- python - 如何在python中的图形(字典)中找到所有派系?
- powerbi - 使用 Dax power Bi 将文本与第二行进行比较
- python - 在 Python 中读取数据框之前检查 json 文件的方向
- r - 错误:当我使用 gg4xh 库中的 facetted_pos_scales 时输入无效
- python - 如何使用 django GenericForeignKeys?
- npm - 我在终端中使用命令 npm install axios 安装 axios 时遇到问题。…但不安装…