美文网首页
Android强制显示Overflow菜单

Android强制显示Overflow菜单

作者: Lollo | 来源:发表于2015-12-22 16:18 被阅读557次

    在一些有实体菜单键的手机上,Android Overflow菜单的图标可能会不显示。
    这时候需要我们欺骗系统,把ViewConfiguration里面 "sHasPermanentMenuKey"的field设成false, 以达到强制显示的目的。

    代码很简单,直接在继承了Application的类里添加。

     private void makeActionOverflowMenuShown() {
            //devices with hardware menu button (e.g. Samsung Note) don't show action overflow menu
            try {
                ViewConfiguration config = ViewConfiguration.get(this);
                Field menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey");
                if (menuKeyField != null) {
                    menuKeyField.setAccessible(true);
                    menuKeyField.setBoolean(config, false);
                }
            } catch (Exception e) {
                Log.d(TAG, e.getLocalizedMessage());
            }
        }
    

    相关文章

      网友评论

          本文标题:Android强制显示Overflow菜单

          本文链接:https://www.haomeiwen.com/subject/crtvhttx.html