Android 全局替换项目默认字体
项目中,我一开始用的是默认字体-思源黑体,最后项目都已经完成上线了,结果说要把字体改为苹方。我不可能给每一个TextView 、Button、EditText等控件单独去设置苹方字体。在这里我介绍一下我用的方法。
首先、创建替换字体用到的工具类TypefaceUtil
/**
* created by DELL
* on 2020/11/6
*/
public class TypefaceUtil {
/**
* 为给定的字符串添加HTML红色标记,当使用Html.fromHtml()方式显示到TextView 的时候其将是红色的
*
* @param string 给定的字符串
* @return
*/
public static String addHtmlRedFlag(String string) {
return "<font color=\"red\">" + string + "</font>";
}
/**
* 将给定的字符串中所有给定的关键字标红
*
* @param sourceString 给定的字符串
* @param keyword 给定的关键字
* @return 返回的是带Html标签的字符串,在使用时要通过Html.fromHtml()转换为Spanned对象再传递给TextView对象
*/
public static String keywordMadeRed(String sourceString, String keyword) {
String result = "";
if (sourceString != null && !"".equals(sourceString.trim())) {
if (keyword != null && !"".equals(keyword.trim())) {
result = sourceString.replaceAll(keyword, "<font color=\"red\">" + keyword + "</