我拥有什么 ::
我在操作栏中有一个菜单,其中有两个子项
buffet_map_cart.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/action_cart"
android:icon="@drawable/ic_action_camera"
android:showAsAction="ifRoom"
android:title="cart">
<menu>
<item
android:id="@+id/action_cart_buy"
android:icon="@drawable/ic_action_camera"
android:title="Sort by newest"/>
<item
android:id="@+id/action_cart_reserve"
android:icon="@drawable/button_reserve_selector"
android:title="Sort by rating"/>
</menu>
</item>
</menu>
我想做什么 ::
action_cart_buy
和action_cart_reserve
答案 0 :(得分:2)
您可以使用onPrepareOptionsMenu(Menu)
进行动态更新:
准备要显示的屏幕标准选项菜单。每次显示菜单时都会调用此菜单。您可以使用此方法有效地启用/禁用项目或以其他方式动态修改内容。
您可以像以下一样使用它:
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
MenuItem buyItem = menu.findItem(R.id.action_cart_buy);
MenuItem reserveItem = menu.findItem(R.id.action_cart_reserve);
buyItem.setTitle("New buyItem String");
reserveItem.setTitle("New reserveItem String");
return super.onPrepareOptionsMenu(menu);
}
答案 1 :(得分:1)
答案 2 :(得分:0)
您可以访问Menu
或onCreateOptionsMenu
中的onPrepareOptionsMenu
对象(更好)。
public boolean onPrepareOptionsMenu(Menu menu) {
MenuItem item = menu.findItem(R.id.action_cart_buy);
item.setTitle("Any title");
return super.onPrepareOptionsMenu(menu);
}
要让UI在适当的时间更新您的ActionBar,您必须致电:
invalidateOptionsMenu();