Я знаю, как настроить пользовательский шрифт на панели действий. Я просто расширить SherlockFragmentActivity и переопределить SETTITLE так:Как настроить пользовательский шрифт для контекстной панели действий sherlock?
@Override
public void setTitle(CharSequence title) {
String str = String.valueOf(title);
str = str.toUpperCase(Locale.getDefault());
SpannableString s = new SpannableString(str);
MetricAffectingSpan span = new MetricAffectingSpan() {
@Override
public void updateMeasureState(TextPaint p) {
p.setTypeface(FontManager.INSTANCE.getAppFont());
}
@Override
public void updateDrawState(TextPaint tp) {
tp.setTypeface(FontManager.INSTANCE.getAppFont());
}
};
s.setSpan(span, 0, s.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
getSupportActionBar().setTitle(s);
}
Однако, все становится сложнее с баром контекстных действий. Библиотека использует фабрику для того чтобы вернуть панель контекстных действий, например:
ActionMode mode = getSherlockActivity().startActionMode(mActionModeCallback);
mode.setTitle("whatever");
Я МОГ переопределить ActionMode, но Либерал не вернет его.
Любые идеи?
есть способ изменить только TextView, используемый для названия? –
Обновление для вас. –
Редактировать 2 работал! Я пробовал это раньше, но безрезультатно. В конце концов, это было очень просто. благодаря! –