Tôi biết cách đặt phông chữ tùy chỉnh thành thanh hành động. Tôi chỉ cần mở rộng SherlockFragmentActivity và ghi đè lên setTitle như sau:Làm cách nào để đặt phông chữ tùy chỉnh thành thanh hành động theo ngữ cảnh của 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);
}
Tuy nhiên, mọi thứ trở nên phức tạp với thanh tác vụ theo ngữ cảnh. Thư viện sử dụng một nhà máy để trả về thanh hành động theo ngữ cảnh, như sau:
ActionMode mode = getSherlockActivity().startActionMode(mActionModeCallback);
mode.setTitle("whatever");
I CODD override ActionMode, nhưng lib sẽ không trả lại.
Bất kỳ ý tưởng nào?
là Có cách nào để thay đổi chỉ TextView sử dụng cho tiêu đề? –
Bản cập nhật cho bạn. –
Chỉnh sửa 2 đã hoạt động! tôi đã thử điều đó trước đó, vô ích. Nó khá đơn giản sau khi tất cả. cảm ơn! –