У меня возникли проблемы с изменением цвета заголовка панели действий для v11 и выше. Я могу сделать это в xml, но вам нужно динамически изменять его в коде. Как мне это сделать? Заранее спасибо.Как изменить цвет заголовка панели действий в коде
ответ
Идентификатор титула ActionBar
скрыт, или, другими словами, он является внутренним и доступ к нему не может быть выполнен обычно. Вы можете ссылаться на него, используя Resources.getIdentifier
, затем View.findViewById
.
захватить ID для action_bar_title
int titleId = getResources().getIdentifier("action_bar_title", "id", "android");
Теперь вы можете использовать ID с TextView
TextView abTitle = (TextView) findViewById(titleId);
abTitle.setTextColor(colorId);
Если вы используете Sherlock Actionbar вы можете использовать Шерлок-ActionBar-идентификатор для поддерживаемых панелей действий (Android ниже 3.0)
int titleId = Resources.getSystem().getIdentifier("action_bar_title", "id", "android");
if (0 == titleId)
titleId = com.actionbarsherlock.R.id.abs__action_bar_title;
Не могу просто сделать это: getSherlockActivity(). GetSupportActionBar(). SetTitle ("НАЗВАНИЕ"); ?? – marchinram
Вы можете сделать это, когда хотите просто изменить заголовок. но этот вопрос собирался изменить цвет заголовка. – salcosand
Поэтому вам нужно получить TextView в ActionBar, и для этого вам понадобится идентификатор для TextView. И id отличается в Sherlock ActionBar и натовском. – salcosand
Другой способ использует Html
getSupportActionBar().setTitle((Html.fromHtml("<font color=\"#FF4444\">" + getString(R.string.some_string) + "</font>")));
Этот, по моему мнению, самый пуленепробиваемый ответ. – Ercan
Это по-прежнему самый надежный способ установить его. – DarkWolffe
Вы можете использовать SpannableString и ForegroundColorSpan, чтобы установить цвет заголовка
Spannable text = new SpannableString(actionBar.getTitle());
text.setSpan(new ForegroundColorSpan(Color.BLUE), 0, text.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE);
actionBar.setTitle(text);
Это должно быть принятое решение, основанное на внутреннем API (id_ action_bar_title), является плохой идеей, так как это может измениться без уведомления. – fernandohur
Это лучший ответ. В частности, на KitKat, используя v7 appcompat library FAILs в решении action_bar_title id. Используйте этот ответ! – Codeversed
работает как шарм – Dien
Если с помощью v7 appcompat library (протестировано с r22), то вы можете позвонить setTitleTextColor()
на объекте Toolbar
, который заменяет панель действий для всех уровней API. Например:
Toolbar actionBarToolbar = (Toolbar)activity.findViewById(R.id.action_bar);
if (actionBarToolbar != null)
actionBarToolbar.setTitleTextColor(Color.RED);
Когда я обновил свой проект для компиляции для Lollipop, этот ответ является единственным правильным (аварийный ответ Adneal) – Fraser
Я использую библиотеку поддержки 21.0.3, и это больше не работает, если я не сделал никакой ошибки, очевидно. Сначала попробуйте решение IvanP. –
@ ČikićNenad Исправлено для appcompat r22 (по крайней мере, должно работать и с r21). – matiash
- 1. изменить текст заголовка цвет панели действий
- 2. Изменить цвет панели действий
- 3. Как изменить цвет панели действий?
- 4. Как изменить цвет текста заголовка панели действий, когда приложение приостановлено?
- 5. Как изменить цвет заголовка панели действий во фрагменте
- 6. Изменить панель действий Цвет заголовка
- 7. Как изменить фон заголовка в панели действий?
- 8. Цвет заголовка панели действий Android не меняется
- 9. Actionbarsherlock - изменить цвет панели действий
- 10. Как изменить цвет панели действий в android
- 11. Как изменить цвет панели действий в Android?
- 12. Как изменить цвет меню в панели действий?
- 13. Как изменить цвет в панели действий заголовок
- 14. Как изменить размер текста заголовка панели действий
- 15. Как изменить шрифт заголовка/субтитров панели действий?
- 16. Изменить цвет заголовка приложения из панели действий, созданной на actionbarstylegenerator
- 17. Название панели действий Android - изменить цвет фона
- 18. Android: Как изменить цвет фона панели действий
- 19. Как изменить цвет элементов панели действий?
- 20. Как изменить цвет панели действий Android?
- 21. Android: как изменить цвет фона панели действий?
- 22. Как изменить цвет определенного компонента панели действий
- 23. Как изменить цвет панели действий (actionbarsherlock)
- 24. Как изменить цвет разделителя панели действий?
- 25. Изменить цвет индикатора вкладок в панели действий
- 26. Изменить цвет панели действий в Android
- 27. Изменить цвет фона в панели действий Android
- 28. Как изменить цвет заголовка в панели заголовка с помощью lwuit?
- 29. Цвет индикатора панели действий
- 30. как изменить назад узкий и изменить цвет в панели действий
Это не работает на моем Moto Razor. – antonio081014
Это не работает для меня:/ – Si8
Эта вещь не работает для меня. Чтобы убедиться, что нет статического заголовка в панели действий, поэтому я использую «action_bar_title» в вызове метода getIdentifier. То же самое касается «id» и «android». Я использую библиотеку v7-appcompat. – MSIslam