在我的应用程序android中我想添加一个像这样的动作栏(它有一个子菜单)
我的xml代码是
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" >
<item
android:id="@+id/menu_item_search"
app:actionViewClass="android.support.v7.widget.SearchView"
app:showAsAction="always"
android:icon="@drawable/abc_ic_search"
android:title="Search Products">
</item>
<item
android:id="@+id/menu_Home"
app:showAsAction="never"
android:icon="@drawable/abc_ic_search"
android:showAsAction="ifRoom|withText"
android:title="Home"/>
<item
android:id="@+id/menu_favourite"
app:showAsAction="never"
android:icon="@drawable/abc_ic_search"
android:showAsAction="ifRoom|withText"
android:title="favourite"/>
<item
android:id="@+id/menu_Balance"
app:showAsAction="never"
android:icon="@drawable/abc_ic_search"
android:showAsAction="ifRoom|withText"
android:title="Balance"/>
<item
android:id="@+id/menu_logout"
android:icon="@drawable/abc_ic_search"
app:showAsAction="never"
android:showAsAction="ifRoom|withText"
android:title="Logout"/>
</menu>
在android sdk 2.x中结果它不是我想要的
我也试过
<item
android:id="@+id/root_menu"
DetailsPage:showAsAction="always"
android:icon="@drawable/abc_ic_menu_moreoverflow_normal_holo_light"
android:title="More">
<menu>
<item
android:id="@+id/menu_Home"
DetailsPage:showAsAction="ifRoom|withText"
android:icon="@drawable/abc_ic_search"
android:showAsAction="ifRoom|withText"
android:title="Home"/>
<item
android:id="@+id/menu_Balance"
DetailsPage:showAsAction="ifRoom|withText"
android:icon="@drawable/abc_ic_search"
android:showAsAction="ifRoom|withText"
android:title="Balance"/>
<item
android:id="@+id/menu_logout"
android:icon="@drawable/abc_ic_search"
DetailsPage:showAsAction="ifRoom|withText"
android:showAsAction="ifRoom|withText"
android:title="Logout"/>
</menu>
</item>
我该怎么做才能拥有相同的图片plz(也许菜单弹出?)
帮我plz
答案 0 :(得分:3)
将命名空间从app更改为compat解决了我的问题:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:compat="http://schemas.android.com/apk/res-auto" >
<item
android:id="@+id/action_submenu"
android:title="@string/action_submenu"
android:icon="@drawable/abc_ic_menu_moreoverflow_normal_holo_dark"
compat:showAsAction="always">
<menu>
<item
android:id="@+id/action_settings"
android:title="@string/action_settings"
compat:showAsAction="always"/>
<item
android:id="@+id/action_example"
android:title="@string/action_example"
compat:showAsAction="withText|ifRoom"/>
</menu>
</item>
</menu>
答案 1 :(得分:0)
您以错误的方式使用命名空间。要使showAsAction属性正常工作,您必须使用“app”命名空间而不是android命名空间。在您第一次尝试时,每次设置showAsAction="never"
时都会使用它。这就是为什么你没有得到预期的结果。
删除所有android:showAsAction="..."
并设置所有app:showAsAction="always"
或="ifRoom|withText"
希望我回答你的问题,如果我这样做,请将其作为正确答案检查。