Android下强制显示ActionBar的overflow按钮

由于手机硬件情况的不同,在没有物理Menu键的手机上,ActionBar的overflow按钮会有显示不出来的情况,可以通过反射的方式修改ViewConfiguration类中的sHasPermanentMenuKey静态变量的值永远为false,系统就是根据这个变量值来判断手机有没有物理Menu键,代码如下:
@Override  
protected void onCreate(Bundle savedInstanceState) {  
    ……  
    setOverflowShowingAlways();  
}  
private void setOverflowShowingAlways() {  
    try {  
        ViewConfiguration config = ViewConfiguration.get(this);  
        Field menuKeyField = ViewConfiguration.class.getDeclaredField(“sHasPermanentMenuKey”);  
        menuKeyField.setAccessible(true);  
        menuKeyField.setBoolean(config, false);  
    } catch (Exception e) {  
        e.printStackTrace();  
    }  
}  

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。