在我的应用程序中,我有一个textView,用户可以在其中设置字体和字体样式。我正在使用此行设置字体。
tvQuoteTextSample.setTypeface(Typeface.SERIF);
现在,我使用此行设置字体样式:
tvQuoteTextSample.setTypeface(tvQuoteTextSample.getTypeface(), Typeface.ITALIC);
这很好。我可以看到字体已更改为Serif + Italic。问题是当我将字体样式更改为“普通”时,它正在失去字体。
tvQuoteTextSample.setTypeface(tvQuoteTextSample.getTypeface(), Typeface.NORMAL);
上一行不仅将斜体重置为正常字体,还将SERIF重置为默认字体。
如何保留以前的字体并将字体样式更改为“普通”?
我正在使用API:最低SDK版本= 17,目标版本= 21
最佳答案
如果要以普通样式应用Typeface.SERIF
,则应调用:
tvQuoteTextSample.setTypeface(Typeface.SERIF, Typeface.NORMAL);
当它设置typeFace而不是与
getTypeface()
一起更新时,它应该可以正常工作。