当前位置: 首页 > news >正文

网站推广网站制作网站建设公司o2o网站做推广公司

网站推广网站制作网站建设公司,o2o网站做推广公司,手机版网站图片自适应怎么做,门户网站规划前言:安卓系统默认的字体在显示文字时,如果文字内容中有中文符号,比如中文的双引号“”,会显示的不够醒目,如图1: 如果想将这些符号用更加醒目的字体比如“宋体”来显示,如图2: …

前言:安卓系统默认的字体在显示文字时,如果文字内容中有中文符号,比如中文的双引号“”,会显示的不够醒目,如图1:

如果想将这些符号用更加醒目的字体比如“宋体”来显示,如图2:

对于安卓Q及其以上系统,直接使用原生的类即可。

而对于5.0(21 sdk)等低版本系统,就得自己想办法写代码来“曲线救国”了。

方法如下:

1. 在你的工程src/main/assets下面新建一个文件夹fonts,然后将电脑中的C:\Windows\Fonts\simsun.ttc拷贝到fonts下面。

2. 附上代码 :

import android.text.TextPaint;
import android.text.Spannable;
import android.text.SpannableString;
import android.text.style.TypefaceSpan;
import android.graphics.Paint;
import android.graphics.Typeface;// 添加自定义TypefaceSpan类来正确处理自定义字体private static class CustomTypefaceSpan extends TypefaceSpan {private final Typeface newType;public CustomTypefaceSpan(Typeface type) {super("");newType = type;}@Overridepublic void updateDrawState(TextPaint ds) {applyCustomTypeFace(ds, newType);}@Overridepublic void updateMeasureState(TextPaint paint) {applyCustomTypeFace(paint, newType);}private static void applyCustomTypeFace(Paint paint, Typeface tf) {int oldStyle;Typeface old = paint.getTypeface();if (old == null) {oldStyle = 0;} else {oldStyle = old.getStyle();}int fake = oldStyle & ~tf.getStyle();if ((fake & Typeface.BOLD) != 0) {paint.setFakeBoldText(true);}if ((fake & Typeface.ITALIC) != 0) {paint.setTextSkewX(-0.25f);}paint.setTypeface(tf);}}private void showSongTiText(TextView tv, String text) {runOnUiThread(() -> {if (text == null) {tv.setText("");return;}// 使用 SpannableString 来处理部分字体样式SpannableString spannableString = new SpannableString(text);// 创建自定义字体Typeface customTypeface = null;try {// 尝试从assets加载中文字体文件(如果有的话)customTypeface = Typeface.createFromAsset(getAssets(), "fonts/simsun.ttc");} catch (Exception e) {LogUtil.error(TAG, "字体加载失败:" + e.getMessage());// 回退到系统serif字体customTypeface = Typeface.create(Typeface.SERIF, Typeface.NORMAL);}// 查找所有中文引号并设置样式if (customTypeface != null) {final Typeface finalTypeface = customTypeface;// 查找左引号String leftQuote = "“";int leftIndex = text.indexOf(leftQuote);while (leftIndex != -1) {// 为左引号设置样式spannableString.setSpan(new CustomTypefaceSpan(finalTypeface),leftIndex,leftIndex + 1,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);// 继续查找下一个左引号leftIndex = text.indexOf(leftQuote, leftIndex + 1);}// 查找右引号String rightQuote = "”";int rightIndex = text.indexOf(rightQuote);while (rightIndex != -1) {// 为右引号设置样式spannableString.setSpan(new CustomTypefaceSpan(finalTypeface),rightIndex,rightIndex + 1,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);// 继续查找下一个右引号rightIndex = text.indexOf(rightQuote, rightIndex + 1);}}//            tv.setText(text);tv.setText(spannableString);});}

注:以上代码可能有未导入的类,你直接Alt+Enter导入一下即可。

http://www.dtcms.com/a/442654.html

相关文章:

  • 嘉兴网站排名公司网站建设三原则
  • 160. 相交链表 LeetCode 热题 HOT 100
  • 厦门论坛网站建设东莞东城邮编
  • 网站改版分析ip代理池
  • 旧房翻新装修公司排名自己的网站怎样做优化
  • 自适应h5网站建筑业企业资质标准建设部网站
  • pc端网站建设相关查阅资料网络营销的网站分类有哪些
  • 高端网站建设公司报价机票网站制作
  • 简单的个人网站模板h5制作工具免费版
  • Base64 原理与 C++ 实现
  • 网站推广优化教程手机端网页设计尺寸规范
  • Web3 RWA 品牌的价值跃迁:从竞争到共赢的网络共建
  • 如何进入网站管理员界面wordpress需要的系统
  • 建个企业网站还是开个淘宝店老域名重新做网站
  • thinkphp企业网站源码全国建设网站
  • 长春火车站什么时候通车徐州网站建设商城制作网站推广seo
  • C++ 11包装库,lambda的用法
  • 湖南省百川电力建设有限公司网站四川万景建设工程有限公司网站
  • 网页设计与网站建设案例教程wordpress 教育模版
  • 《P2679 [NOIP 2015 提高组] 子串》
  • 011 Rust数组
  • 【贪心之临项交换】P8732 [蓝桥杯 2020 国 ABC]|普及
  • macOS 内核路由表操作:直接 API 编程指南
  • 如何做英文系统下载网站椒江做国际网站的公司
  • Linux常用命令使用大全,含运行示例。
  • 实战项目——前端
  • 基于Vue的园区农机管理系统的设计与实现toepr41x(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • Python 3.14.0rc3 新特性说明(对比3.13版本)
  • 中国建设基础设施公司网站网站建设要什么知识
  • 网站建设培训会讲话合肥做网站需要多少钱