我试图在操作栏中显示我的菜单,如下所示:
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/Menu1"
android:icon="@drawable/res1"
android:showAsAction="ifRoom"
android:title="Menu1"/>
<item
android:id="@+id/Menu2"
android:icon="@drawable/res2"
android:showAsAction="ifRoom"
android:title="Menu2"/>
<item
android:id="@+id/Menu3"
android:icon="@drawable/res3"
android:showAsAction="ifRoom"
android:title="Menu3"/>
</menu>
在代码中:
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_logged, menu);
return true;
}
在设计编辑器上显示按钮。但是当我在我的智能手机(三星Galaxy Note 3)上启动应用程序时,其中的菜单显示了3个点。但行动栏中没有菜单。
我不明白,我测试了android:showAsAction
的所有标志,我的内部菜单仍有3个点。
感谢您的帮助!
答案 0 :(得分:3)
导入此
app xmlns:app="http://schemas.android.com/apk/res-auto"
并使用此app:showAsAction="always"
代替android:showAsAction="ifRoom"
编辑完整的代码
<menu xmlns:android="http://schemas.android.com/apk/res/android"
app xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/Menu1"
android:icon="@drawable/res1"
app:showAsAction="always"
android:title="Menu1"/>
<item
android:id="@+id/Menu2"
android:icon="@drawable/res2"
app:showAsAction="always"
android:title="Menu2"/>
<item
android:id="@+id/Menu3"
android:icon="@drawable/res3"
app:showAsAction="always"
android:title="Menu3"/>
</menu>
答案 1 :(得分:2)
尝试使用此
<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/Menu1"
android:icon="@drawable/ic_launcher"
app:showAsAction="always"
android:title="Menu1"
android:orderInCategory="0"/>
<item
android:id="@+id/Menu2"
android:icon="@drawable/ic_launcher"
app:showAsAction="always"
android:title="Menu2"
android:orderInCategory="1"/>
<item
android:id="@+id/Menu3"
android:icon="@drawable/ic_launcher"
app:showAsAction="always"
android:title="Menu3"
android:orderInCategory="2"/>
</menu>
答案 2 :(得分:2)
尝试下面的menu.xml
<?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/Menu1"
android:icon="@drawable/ic_launcher"
app:showAsAction="ifRoom"
android:title="Menu1"
android:orderInCategory="0"/>
<item
android:id="@+id/Menu2"
android:icon="@drawable/ic_launcher"
app:showAsAction="ifRoom"
android:title="Menu2"
android:orderInCategory="1"/>
<item
android:id="@+id/Menu3"
android:icon="@drawable/ic_launcher"
app:showAsAction="ifRoom"
android:title="Menu3"
android:orderInCategory="2"/>
</menu>
答案 3 :(得分:1)
试试这个:
<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/Menu1"
android:icon="@drawable/res1"
android:title="Menu1"
app:showAsAction="ifRoom" />
<item
android:id="@+id/Menu2"
android:icon="@drawable/res2"
android:title="Menu2"
app:showAsAction="ifRoom" />
<item
android:id="@+id/Menu3"
android:icon="@drawable/res3"
android:title="Menu3"
app:showAsAction="ifRoom" />
</menu>
另外,请看一下:
http://developer.android.com/guide/topics/resources/menu-resource.html
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@[+][package:]id/resource_name"
android:title="string"
android:titleCondensed="string"
android:icon="@[package:]drawable/drawable_resource_name"
android:onClick="method name"
android:showAsAction=["ifRoom" | "never" | "withText" | "always" | "collapseActionView"]