Android 4.0 检测用户是否有硬件返回/主页键

标签 android

在 ICS/HC 中有没有办法检测用户是否有权访问硬件菜单键?

根据配置,我希望更改操作栏的填充方式,例如:

如果用户有物理主页按钮,请减少操作栏中显示的按钮数量。

谢谢, 劳伦斯

最佳答案

我花了一些时间,但我找到了一种比依赖 hasPermanentMenuKey() 更可靠的方法,它不适用于较新的手机,如 HTC One没有菜单键,但有主页和后退键,因此不需要(或显示)软导航栏。要解决此问题,请尝试使用以下代码来检查后退按钮:

boolean hasMenuKey = ViewConfiguration.get(context).hasPermanentMenuKey();
boolean hasBackKey = KeyCharacterMap.deviceHasKey(KeyEvent.KEYCODE_BACK);

if(!hasMenuKey && !hasBackKey) {
    // Do whatever you need to do, this device has a navigation bar
}

关于Android 4.0 检测用户是否有硬件返回/主页键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9203303/

相关文章:

Android - 模板匹配

android - 在 Firebase 项目中集成 gmail 连接

android - 使用 Picasso 在 Activity 之间共享过渡

android-sdk-plugin 项目不知道 Android 类

java - 在 mapchange 场景中 try catch 是否可以接受

android - 如何在Gradle中检查当前的构建版本?

android - 在 Windows 中更改模拟器电池电量

database - Android SQLite,询问ContentValues

android - VideoView 内存泄漏

android - 使用 firebase Crashlytics 时以下任务之间的循环依赖