首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检测Android设备是否没有物理按键或弹幕按键?

如何检测Android设备是否没有物理按键或弹幕按键?
EN

Stack Overflow用户
提问于 2019-05-16 18:17:58
回答 2查看 1.2K关注 0票数 0

许多Android手机,如Google Pixel 3和小米Mix2等,没有任何屏幕上或物理导航按钮,它们通过手势工作。在React-Native中,这是一个巨大的问题,因为在现代设备上,如果我检测到屏幕的高度,就会从底部留下一些空白屏幕。

我尝试过这个解决方案,它在有硬件或屏幕按钮的设备上工作得很好,但对于没有按钮的现代设备,它会返回null。Determine whether hardware buttons are drawn on screen in React Native

我当前的RN版本: 0.59.5

图片来源:This is the UI Screenshot From MI MIX 2

EN

回答 2

Stack Overflow用户

发布于 2019-05-16 19:19:43

好的,你可以使用react-native-device-info来收集移动设备模型和其他细节,你可以过滤掉那些不支持屏幕上或硬件后退按钮的现代移动设备,并用你的自定义代码片段来处理这些移动设备。

我猜想你正在使用来自React Native Api的Flexbox和Dimensions来处理你的应用程序的响应。

另外,如果你能分享你到目前为止使用的UI屏幕截图和代码库,那会更好。

票数 0
EN

Stack Overflow用户

发布于 2019-06-10 11:34:29

您可以比较设备和窗口(可用)高度之间的差异:

代码语言:javascript
复制
import {Dimensions} from 'react-native';

let deviceHeight = Dimensions.get('screen').height;
let windowHeight = Dimensions.get('window').height;
let bottomNavBarHeight = deviceHeight - windowHeight;
if (bottomNavBarHeight > 0) {
    // onscreen navbar
} else {
    // not onscreen navbar
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56166230

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档