溢出图标3点不出现

时间:2014-05-18 08:47:49

标签: android xml android-actionbar

enter image description here我在SO中看到很多帖子,但无法弄清楚为什么不显示Overflow图标。我正在测试真实设备Android 4.4。按下选项按钮时,我会看到屏幕底部显示的项目。但我需要它像在Gmail应用程序中一样在Top Right上显示为3点菜单。 Pl帮助。当点击选项按钮时,需要像Tubemate app的附加照片。

menu.xml文件

<menu xmlns:android="http://schemas.android.com/apk/res/android">
<!--xmlns:com.app.MainActivity="http://schemas.android.com/apk/res-auto"-->

  <item
    android:id="@+id/action_search"
    android:actionViewClass="android.widget.SearchView"
    android:icon="@drawable/icon_search"
    android:orderInCategory="1"
    android:title="search"
    android:showAsAction="never"/>
<item
    android:id="@+id/action_end"
    android:icon="@drawable/end"
    android:menuCategory="container"
    android:orderInCategory="2"
    android:title="@string/end"
    android:showAsAction="never"/>

 </menu>

MainActivity:

@Override
public boolean onPrepareOptionsMenu(Menu menu)
{   menu.clear();

this.menu = menu;
getMenuInflater().inflate(R.menu.main, menu);
MenuItem searchItem = menu.findItem(R.id.action_search);
    return super.onPrepareOptionsMenu(menu);
    }
@Override
public boolean onOptionsItemSelected(MenuItem item) {

      super.onOptionsItemSelected(item);
    switch (item.getItemId()) {
    case R.id.action_end:
        System.exit(0);
        break;
    case R.id.action_search:
        break;
    default:
        break;
    }
    return false;
}

1 个答案:

答案 0 :(得分:1)

溢出菜单只会出现在没有物理菜单按钮的设备上。在带有物理菜单按钮的设备中,它将从底部显示。

要强制溢出菜单,请将此代码放在 onCreate

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();
}
}

Source