有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java菜单溢出3dot在某些设备上不可见

在溢出按钮上有菜单按钮的设备不显示

<menu xmlns:安卓="http://schemas.安卓.com/apk/res/安卓"
xmlns:app="http://schemas.安卓.com/apk/res-auto" >

<item
    安卓:id="@+id/incoming"
    安卓:showAsAction="always"
    安卓:title="Incoming Call Control"/>
<item
    安卓:id="@+id/list"
    安卓:showAsAction="always"
    安卓:title="Active Filter List"/>


共 (1) 个答案

  1. # 1 楼答案

    它在具有硬件菜单按钮的设备上不可见。要启用action overflow图标,您可以在应用程序中进行一次恶意攻击

    private void getOverflowMenu() {
    
         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) {
            e.printStackTrace();
        }
    }
    

    application类中调用上述方法onCreate()