Bol*_*aul 4 fonts android android-textinputlayout
是否可以为EditText更改TextInputLayout错误文本字体?
我只能通过app:errorTextAppearance更改颜色或文本大小。
您可以使用SpannableString
来设置字体:
SpannableString s = new SpannableString(errorString);
s.setSpan(new TypefaceSpan(font), 0, s.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
mPasswordView.setError(s);
Run Code Online (Sandbox Code Playgroud)
Span
具有特定Typeface
设置的自定义类:
public class TypefaceSpan extends MetricAffectingSpan {
private Typeface mTypeface;
public TypefaceSpan(Typeface typeface) {
mTypeface = typeface;
}
@Override
public void updateMeasureState(TextPaint p) {
p.setTypeface(mTypeface);
p.setFlags(p.getFlags() | Paint.SUBPIXEL_TEXT_FLAG);
}
@Override
public void updateDrawState(TextPaint tp) {
tp.setTypeface(mTypeface);
tp.setFlags(tp.getFlags() | Paint.SUBPIXEL_TEXT_FLAG);
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1605 次 |
最近记录: |