2014-09-08 4 views
1

Так что в моем приложении у меня есть действие штрих-код цвета, как это в случае создания в «activity_main»:Android SDK, панель действий цвет

android.app.ActionBar redd = getActionBar(); 
redd.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#BA0202"))); 

И это меняет, но я хотел бы использовать строка. Я попытался «R.string.ColorRed» Взамен «# BA0202», и это дает мне ошибку. Причина, по которой я хочу это сделать, а не изменять тему приложения, заключается в том, что когда пользователь нажимает кнопку, он изменяет цвет панели действия на определенный цвет. И еще одна причина, по которой я хочу использовать эту строку, состоит в том, что если у меня есть этот код на нескольких страницах, мне пришлось бы менять код цвета (# BA0202) на другой на каждой странице, если бы я хотел изменить главную тему ActionBar цвет-

ответ

1

Изменить ваш

redd.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#BA0202"))); 

к

redd.setBackgroundDrawable(new ColorDrawable(Color.parseColor(getResources().getString(R.string.ColorRed)))); 

и фиксированной проблема вот причиной этого Change actionbar color programmatically more than once

Append этот код на свой ActionBar: [assumng этой проблемы существуют в вашем приложении]

redd.setDisplayShowTitleEnabled(false); 
redd.setDisplayShowTitleEnabled(true); 

надеюсь, что это помогает :)

Смежные вопросы