我有这个工作正常的菜单 xml:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
>
<item
android:id="@+id/context_menu_save"
android:actionViewClass="my.app.TextViewPlus"
android:showAsAction="always"
android:title="@string/logout"
android:visible="false"/>
</menu>
但是当我开始使用 AppComap v7 时,我在使用 getActionView()
时遇到了 null 异常。
我将菜单布局更改为:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:myapp="http://schemas.android.com/apk/res-auto" >
<item
android:id="@+id/context_menu_save"
myapp:actionViewClass="my.app.TextViewPlus"
myapp:showAsAction="always"
android:title="@string/logout"
android:visible="false"/>
</menu>
现在它工作正常。谁能解释一下,为什么会这样?
最佳答案
xmlns:myapp 当您创建自己的(或使用其他人的)自定义 View 时会用到它。
xmlns:android默认android View 时使用。
关于您的问题,我希望您使用自己(或使用其他人)的自定义 View 。所以你有错误。
关于android - 我的 MenuItem 的 getActionView() 在 AppCompat 中返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27901446/