我希望能够在图片内的操作栏中显示星期数。我的第一次尝试是在图标中显示标题,但它同时显示标题或图标。接下来,我尝试创建可用于包含星期数的图标的不同图片。但是我找不到改变图标的方法。
有人知道我能做什么吗?
这是菜单的代码
<item android:id="@+id/action_week"
android:title="p"
android:showAsAction="always"
android:icon="@drawable/vecka0"/>
<item
android:id="@+id/menu_overflow"
android:icon="@drawable/menu_large"
android:showAsAction="always"
android:title="@string/Vmeny">
<menu>
<item android:id="@+id/action_confirm"
android:title="@string/confirm_text"
android:showAsAction="ifRoom" />
<item android:id="@+id/action_switch_company"
android:title="@string/Vswitch_company"
android:showAsAction="never"/>
<item android:id="@+id/action_logout"
android:title="@string/logout_text"
android:showAsAction="ifRoom"/>
</menu>
</item>
这是我想要的菜单
答案 0 :(得分:0)
也许你可以创建一个全局的Menu变量(如果你以后再使用它,如果没有把它变成本地的)并在onCreateOptionsMenu()上初始化它。
private Menu menu;
在onCreateOptionsMenu()中:
this.memu = menu;
然后获取您想要菜单的项目并进行更改:
menu.getItem(0).setIcon(getResources().getDrawable(R.drawable.ic_launcher));
答案 1 :(得分:0)
显示 图标 不 文字
在商品标签中提及。
<item android:id="@+id/action_week"
android:title="p"
android:showAsAction="always|withText" //this would show icon and text both at atime
android:icon="@drawable/vecka0"/>
更改 图标 动态
首先需要在创建菜单时参考菜单。
private Menu mMenu;
@Override
public boolean onCreateOptionsMenu(Menu menu){
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main_activity, menu);
// Save the menu reference
mMenu = menu;
return super.onCreateOptionsMenu(menu);
}
// For example - Call when you need to change icon
private void setActionIcon(boolean showWithBadge){
MenuItem item = mMenu.findItem(R.id.ITEM_ID);
if(mMenu != null){
if(showWithBadge){
item.setIcon(R.drawable.IC_WITH_BADGE);
}
else {
item.setIcon(R.drawable.IC_WITHOUT_BADGE);
}
}
}