Java android-菜单项保持白色,即使已禁用
在工具栏中灰显保存项仅在设计模式下发生,但在运行时不会发生 我正在使用以下代码:Java android-菜单项保持白色,即使已禁用,java,android,android-actionbar,Java,Android,Android Actionbar,在工具栏中灰显保存项仅在设计模式下发生,但在运行时不会发生 我正在使用以下代码: @Override public boolean onPrepareOptionsMenu(Menu menu) { if(count > 0) { menuItemSave.setEnabled(true); } else { menuItemSave.setEnabled(false); } return true; } @Over
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
if(count > 0) {
menuItemSave.setEnabled(true);
} else {
menuItemSave.setEnabled(false);
}
return true;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.options_menu, menu);
menuItemSave = menu.findItem(R.id.save);
return true;
}
它正在启用/禁用,但禁用时它实际上不会变成灰色。当按钮启用或禁用时,您可以使用自定义颜色来更改颜色。[根据您的要求更改颜色] 颜色/自定义按钮\u color.xml:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="#FF0000" android:state_enabled="false" />
<item android:color="#CCCCCC"/>
</selector>
根据Android OnPrepareOptions,菜单在打开之前会被调用。但若菜单始终打开,则不会被调用
所以
在Android 3.0及更高版本上,如果要更新始终打开的菜单,必须调用InvalidateOptions菜单()。然后,系统将调用onPrepareOptions菜单(),以便您可以更新菜单项
android:textColor="@color/custom_button_color"