小编wqy*_*csu的帖子

在工具栏溢出菜单中显示菜单项图标时,如何发生这种奇怪的情况?

我想在工具栏中显示溢出菜单(AppCompat-v7:22.1.1),下面是我的menu_main.xml.

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity">
<item
    android:id="@+id/action_search"
    android:title="@string/action_search"
    android:icon="@mipmap/ic_menu_search"
    android:orderInCategory="100"
    android:actionViewClass="android.widget.SearchView"
    app:showAsAction="ifRoom"/>

<item
    android:id="@+id/menu_group_chat"
    android:title="@string/menu_group_chat"
    android:icon="@mipmap/ic_menu_groupchat" />

<item
    android:id="@+id/menu_add_friend"
    android:title="@string/menu_add_friend"
    android:icon="@mipmap/ic_menu_add_friend" />
Run Code Online (Sandbox Code Playgroud)

运行我的应用程序后,菜单项的图标没有显示,然后我尝试了这个解决方案,在我的Activty中添加了一个覆盖方法onMenuOpened()(从AppCompatActivity扩展),

@Override
public boolean onMenuOpened(int featureId, Menu menu) {
    if(menu!=null){
        if(menu.getClass().getSimpleName().equals("MenuBuilder")){
            try {
                Method m = menu.getClass().getDeclaredMethod(
                        "setOptionalIconsVisible", Boolean.TYPE);
                m.setAccessible(true);
                m.invoke(menu, true);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    return super.onMenuOpened(featureId, menu);
}
Run Code Online (Sandbox Code Playgroud)

但在运行此演示后,我发现图标仍未显示.

1.单击溢出按钮的菜单

从这个报道的问题,我知道在22.x中不再调用AppCompatActivity.onMenuOpened,但奇怪的是当我点击Genymotion中的硬件菜单键时,菜单出现在底部并带有图标,

2.单击菜单键的菜单

关闭菜单后,我再次单击工具栏中的溢出按钮,菜单中出现这些图标,

3.单击溢出按钮的菜单

多奇怪啊!为什么会这样?

android menu toolbar

9
推荐指数
1
解决办法
4493
查看次数

如何使用Instagram的"TextLayoutView"改进Android上的TextView渲染

为了改善Instagram中的TextView渲染,Instagram中的工程师在这里提供了一个hack ,他们使用自定义视图(TextLayoutView)来缓存text.Layout,但在这篇文章中,他们没有给我们演示或告诉我们如何使用它,所以如果我想使用这个hack,我该怎么办?

android rendering textview instagram

5
推荐指数
1
解决办法
1356
查看次数

标签 统计

android ×2

instagram ×1

menu ×1

rendering ×1

textview ×1

toolbar ×1