I want to change the color of the Action Bar background when the user chooses a selection in the Navigation List.
Currently, my code looks like this:
@Override
public boolean onNavigationItemSelected(int itemPosition, long itemId) {
ColorDrawable colorDrawable = new ColorDrawable();
ActionBar actionBar = getActionBar();
if(itemPosition == 0)
{
colorDrawable.setColor(0xffFEBB31);
actionBar.setBackgroundDrawable(colorDrawable);
return true;
}
if(itemPosition == 1)
{
colorDrawable.setColor(0xff9ACC00);
actionBar.setBackgroundDrawable(colorDrawable);
return true;
}
return false;
}
However, the first time I select itemPosition 1 in the Navigation List, it changes the ActionBar color to white.
The second time I click the itemPosition 1 in the Navigation List, I have no issue.
Could anyone tell me why this is and how I can fix the problem? Thank you for the help!
Try this:
myActivity.invalidateOptionsMenu();
Try using this code:
ColorDrawable colorDrawable = new ColorDrawable(Color.parseColor("#ffFEBB31"));
actionBar.setBackgroundDrawable(colorDrawable);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With