我目前正在努力解决这个问题.我需要检查安装了应用程序的设备是否有硬件菜单键.因为它不存在于像Galaxy Nexus这样的设备上,所以我在这种情况下直接在UI中显示它.
我已经查看了PackageManager.hasSystemFeature(),但没有找到任何有用的东西.
有没有人这样做过?
在将我的应用程序更新到Kitkat时,我只想使用Translucent属性在KitKat上给它们一个漂亮的外观:
半透明系统条
现在,您可以使用新主题(Theme.Holo.NoActionBar.TranslucentDecor和Theme.Holo.Light.NoActionBar.TranslucentDecor)使系统栏部分半透明.通过启用半透明系统条,您的布局将填充系统条后面的区域,因此您还必须为布局中不应被系统条覆盖的部分启用[fitsSystemWindows] [4].
我唯一担心的是我想使用一个与Google想要相反的ActionBar(两个主题都有NoActionBar:
Theme.Holo.NoActionBar.TranslucentDecor
Theme.Holo.Light.NoActionBar.TranslucentDecor
Run Code Online (Sandbox Code Playgroud)
由于我不打算使用一些黑客或技巧来使其工作,我只是想知道是否有一些正确的方法来实现这一点,或者这是否违反谷歌的指导方针.

此问题类似于检查半透明导航是否可用但不完全可用.我有一个使用CyanogenMod 11或Android 4.4等效的Nexus 4,任何使用FLAG_TRANSLUCENT_NAVIGATION以横向模式运行的应用程序都不具备系统UI上的半透明效果,如肖像模式.
同样的问题可以在Nexus 5上重现,因为我没有在横向模式下使用半透明按钮看到为Android 4.4构建的任何谷歌应用程序.
这是我正在使用的代码
int API_LEVEL = android.os.Build.VERSION.SDK_INT;
if (API_LEVEL >= 19)
{
getWindow().addFlags( WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION );
}
Run Code Online (Sandbox Code Playgroud)
当窗口表面变大(并且不可用)时,没有半透明性.
所以问题是,我是否必须做任何额外的事情以使其在横向模式下工作?或者这是Android的错误?