Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/223.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何正确显示菜单项?_Java_Android_Menuitem - Fatal编程技术网

Java 如何正确显示菜单项?

Java 如何正确显示菜单项?,java,android,menuitem,Java,Android,Menuitem,我正在尝试创建一些菜单项,方法如下: main\u activity\u actions.xml <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/item_add" android:icon="@drawable/ic_a

我正在尝试创建一些菜单项,方法如下:

main\u activity\u actions.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id="@+id/item_add"
        android:icon="@drawable/ic_action_add"
        android:orderInCategory="1"
        android:title="@string/action_add"
        android:showAsAction="always" />
    <item
        android:id="@+id/item_settings"
        android:orderInCategory="2"
        android:title="@string/action_settings"
        android:showAsAction="never" />
    <item
        android:id="@+id/item_about"
        android:orderInCategory="3"
        android:title="@string/action_about"
        android:showAsAction="never" />
</menu>
我无法在顶部菜单栏上获得这些项目的渲染。请问,我该怎么做才能让它工作


提前谢谢

我明白了。使用android支持库v7 appcompat,您必须使用特定的命名空间才能正确使用属性
showAsAction
。以下是您需要对xml文件执行的操作:

将自定义命名空间声明添加到文件中,如下所示:

xmlns:app="http://schemas.android.com/apk/res-auto"
然后,不要使用
android:showAsAction
,而是使用
app:showAsAction

这将允许显示菜单项

以下是结果文件代码:

<?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_add"
        android:icon="@drawable/ic_action_add"
        android:orderInCategory="1"
        android:title="@string/action_add"
        app:showAsAction="always" />
    <item
        android:id="@+id/item_settings"
        android:orderInCategory="2"
        android:title="@string/action_settings"
        app:showAsAction="never" />
    <item
        android:id="@+id/item_about"
        android:orderInCategory="3"
        android:title="@string/action_about"
        app:showAsAction="never" />
</menu>


希望我能帮助您。

您是否使用actionbar的任何库?如果您使用android支持库中的ActionBarActivity,在这里输入代码,菜单将自动显示在顶部菜单栏上。您的活动是否扩展了ActionBarActivity?@CChi,我扩展了
ActionBarActivity
,但我无法使用此代码显示菜单项。@joao2fast4u,是的,它可以。
<?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_add"
        android:icon="@drawable/ic_action_add"
        android:orderInCategory="1"
        android:title="@string/action_add"
        app:showAsAction="always" />
    <item
        android:id="@+id/item_settings"
        android:orderInCategory="2"
        android:title="@string/action_settings"
        app:showAsAction="never" />
    <item
        android:id="@+id/item_about"
        android:orderInCategory="3"
        android:title="@string/action_about"
        app:showAsAction="never" />
</menu>