繁体   English   中英

基于语言的Android textview字体

[英]Android textview font based on language

是否有一种通用的字体处理方法,例如,如果是中文,则使用自定义字体,如果是英语,则退回默认字体? 谢谢。

这是我的2美分。 您可以使用书法库轻松更改整个应用程序或特定TextView的自定义字体。

  • 如果您想针对整个应用程序执行此操作,那么我想到的一种解决方案是:

    1. 在您的应用中,您可以收听ACTION_LOCALE_CHANGED广播
    2. 在侦听器内部,检查语言环境是Locale.SIMPLIFIED_CHINESE还是Locale.TRADITIONAL_CHINESE ,然后更改应用程序的字体。
  • 如果要以编程方式更改部分文字的字体,则可以使用CalligraphyTypefaceSpan每个TextView / Spannables部分所述的Multi Typeface

     SpannableStringBuilder sBuilder = new SpannableStringBuilder(); sBuilder.append("Hello!") // Bold this .append("I use Calligraphy"); // Default TextView font. // Create the Typeface you want to apply to certain text CalligraphyTypefaceSpan typefaceSpan = new CalligraphyTypefaceSpan(TypefaceUtils.load(getAssets(), "fonts/Roboto-Bold.ttf")); // Apply typeface to the Spannable 0 - 6 "Hello!" This can of course by dynamic. sBuilder.setSpan(typefaceSpan, 0, 6, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); setText(sBuilder, TextView.BufferType.SPANNABLE); 

希望能帮助到你。

PS:我不以任何方式隶属于图书馆。 我是它的快乐用户。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM