<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" >
<item
android:id="@+id/item_action_share"
android:icon="@drawable/ic_share_black_24dp"
android:title="@string/fileManager_menu_share"
app:showAsAction="withText">
</item>
<item
android:id="@+id/item_action_print"
android:icon="@drawable/ic_print_black_24dp"
android:title="@string/fileManager_menu_print"
app:showAsAction="withText">
</item>
</menu>
在menu中,图标不会显示。
有的人是采用 onMenuOpened() 来写,可是仍然会有问题,对于AppCompactActivity你可以把onPrepareOptionsPanel(View v,Menu menu)代替 onMenuOpened() 。
@Override
protected boolean onPrepareOptionsPanel(View view, Menu menu) {
if (menu != null) {
if (menu.getClass() == MenuBuilder.class) {
try {
Method m = menu.getClass().getDeclaredMethod("setOptionalIconsVisible", Boolean.TYPE);
m.setAccessible(true);
m.invoke(menu, true);
} catch (Exception e) {
Out.print(getClass().getSimpleName() + "onMenuOpened...unable to set icons for overflow menu" + e);
}
}
}
return super.onPrepareOptionsPanel(view, menu);
};
这样的话,toolbar中menu中的图标就可以显示了
本文详细介绍了在Android应用中遇到菜单图标不显示的问题,并提供了通过使用onPrepareOptionsPanel方法解决此问题的解决方案。同时,文章还强调了在解决过程中确保工具栏中的菜单图标能够正常显示的重要性。
7153

被折叠的 条评论
为什么被折叠?



