Как установить часть заголовка Actionbar жирным шрифтом

Я хотел бы иметь заголовок actionbar как "titlepart1titleparttwo". Но, насколько я понимаю, с помощью темы вы можете либо выделить весь заголовок жирным шрифтом, либо нет, но не частично. Есть ли обходной путь?

<style name="MyTheme" parent="@android:style/Theme.Holo.Light">
    <item name="android:actionBarStyle">@style/MyActionBar</item>
</style>

<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
    <item name="android:background">#81CFEB</item>
    <item name="android:textStyle">bold</item>
</style>

2 ответа

Решение

Нет необходимости использовать темы, на самом деле.

CharSequence экземпляры могут иметь информацию разметки. Вы можете добавить Spans вручную или использовать Html класс, чтобы сделать это проще. Например:

actionBar.setTitle(Html.fromHtml("titlepart1<b>titleparttwo</b>"));

На что Матиаш ответил, это хорошо, но это не нативный метод

Вы должны попробовать это, также это будет быстрее

getSupportActionBar().setDisplayShowTitleEnabled(true);
SpannableStringBuilder str = new SpannableStringBuilder("HelloWorld");
str.setSpan(new android.text.style.StyleSpan(android.graphics.Typeface.BOLD), 5, 10,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
getSupportActionBar().setTitle(str);
Другие вопросы по тегам