<?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>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
在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中的图标就可以显示了