
我需要检查一个设备是否有软导航栏,我按照建议here.
它工作得很好,除了onePlus设备,出于某种原因,这段代码:
int ID = resources.getIDentifIEr("config_showNavigationbar","bool",androID"); return ID > 0 && resources.getBoolean(ID);虽然显示了软导航栏,但返回false.
知道如何才能得到正确的结果?
我更喜欢不计算实际宽度和可用宽度,这似乎是昂贵的 *** 作.
谢谢.
最佳答案见this答案.但是,没有办法100%肯定.boolean hasBackKey = KeyCharacterMap.deviceHasKey(KeyEvent.KEYCODE_BACK);boolean hasHomeKey = KeyCharacterMap.deviceHasKey(KeyEvent.KEYCODE_HOME);if (hasBackKey && hasHomeKey) { // no navigation bar,unless it is enabled in the settings} else { // 99% sure there's a navigation bar}编辑
另一种方法
public boolean hasNavbar (Resources resources) { int ID = resources.getIDentifIEr("config_showNavigationbar","androID"); return ID > 0 && resources.getBoolean(ID);} 总结 以上是内存溢出为你收集整理的android – 在onePlusOne设备中逐步检测软导航栏的可用性?全部内容,希望文章能够帮你解决android – 在onePlusOne设备中逐步检测软导航栏的可用性?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)