Android String.xml 设置加粗字体/修改字体颜色/动态设置修改文案

之前经常使用Spannable

这次主要在String.xml使用:<![CDATA[和]]>

效果:

html 复制代码
<resources>
    <string name="str_bianse"><![CDATA[变色 <font color="#ff0000">曲项向天歌</font> 白毛浮绿水]]></string>
    <string name="str_jiacu"><![CDATA[加粗1 <b>曲项向天歌</b> 白毛浮绿水]]></string>
    <string name="str_huanhang"><![CDATA[变色、换行 <font color="#ff0000">曲项向天歌</font><br> 白毛浮绿水]]></string>
    <string name="str_xieti"><![CDATA[斜体 <i><font>曲项向天歌</font></i> 白毛浮绿水]]></string>
    <string name="str_xiahuaxian"><![CDATA[下划线 <u>曲项向天歌</u> 白毛浮绿水]]></string>
    <string name="str_xiahuaxian_bianse"><![CDATA[下划线、变色 <u><font color="#ff0000">曲项向天歌</font></u> 白毛浮绿水]]></string>
    <string name="str_zhonghuaxian"><![CDATA[中划线 <s>曲项向天歌</s> 白毛浮绿水]]></string>
    <string name="str_jiacu2"><![CDATA[加粗2 <strong>曲项向天歌</strong> 白毛浮绿水]]></string>
    <string name="str_fangda"><![CDATA[放大 <big>曲项向天歌</big> 白毛浮绿水]]></string>
    <string name="str_souxiao"><![CDATA[缩小 <small>曲项向天歌</small> 白毛浮绿水]]></string>
    <!--    "<"改成HTML转义符&lt-->
    <string name="welcome_messages">Hello, %1$s! You have &lt;b>%2$d new messages&lt;/b></string>
    <!--    内容放在<![CDATA[和]]>里   %1$s 第一个要填充的字符串 %2$d 第二个要填充的int值-->
    <string name="welcome_messages2"><![CDATA[Hello, %1$s! You have <b>%2$d new messages</b>]]></string>
</resources>

类里:

java 复制代码
        TextView second_1_Tv = findViewById(R.id.second_1_Tv);
        second_1_Tv.setText(Html.fromHtml(getResources().getString(R.string.str_bianse)));
        TextView second_2_Tv = findViewById(R.id.second_2_Tv);
        second_2_Tv.setText(Html.fromHtml(getResources().getString(R.string.str_jiacu)));
        TextView second_3_Tv = findViewById(R.id.second_3_Tv);
        second_3_Tv.setText(Html.fromHtml(getResources().getString(R.string.str_huanhang)));
        TextView second_4_Tv = findViewById(R.id.second_4_Tv);
        second_4_Tv.setText(Html.fromHtml(getResources().getString(R.string.str_xieti)));
        TextView second_5_Tv = findViewById(R.id.second_5_Tv);
        second_5_Tv.setText(Html.fromHtml(getResources().getString(R.string.str_xiahuaxian)));
        TextView second_6_Tv = findViewById(R.id.second_6_Tv);
        second_6_Tv.setText(Html.fromHtml(getResources().getString(R.string.str_xiahuaxian_bianse)));
        TextView second_7_Tv = findViewById(R.id.second_7_Tv);
        second_7_Tv.setText(Html.fromHtml(getResources().getString(R.string.str_zhonghuaxian)));
        TextView second_8_Tv = findViewById(R.id.second_8_Tv);
        second_8_Tv.setText(Html.fromHtml(getResources().getString(R.string.str_jiacu2)));
        TextView second_9_Tv = findViewById(R.id.second_9_Tv);
        second_9_Tv.setText(Html.fromHtml(getResources().getString(R.string.str_fangda)));
        TextView second_10_Tv = findViewById(R.id.second_10_Tv);
        second_10_Tv.setText(Html.fromHtml(getResources().getString(R.string.str_souxiao)));

        TextView second_12_Tv = findViewById(R.id.second_12_Tv);
        String text = String.format(getResources().getString(R.string.welcome_messages), "大呲花", 666);
        second_12_Tv.setText(Html.fromHtml(text));

        TextView second_14_Tv = findViewById(R.id.second_14_Tv);
        Spanned spanned = Html.fromHtml(getResources().getString(R.string.welcome_messages2, "大呲花", 666));
        second_14_Tv.setText(spanned);
相关推荐
_Sem37 分钟前
KMP实战:从单端到跨平台的完整迁移指南
android·前端·app
從南走到北40 分钟前
JAVA国际版任务悬赏发布接单系统源码支持IOS+Android+H5
android·java·ios·微信·微信小程序·小程序
vistaup1 小时前
Android ContentProvier
android·数据库
我是场1 小时前
Android Camera 从应用到硬件之- 枚举Camera - 1
android
4Forsee1 小时前
【Android】View 事件分发机制与源码解析
android·java·前端
咕噜签名分发冰淇淋1 小时前
苹果ios安卓apk应用APP文件怎么修改手机APP显示的名称
android·ios·智能手机
应用市场1 小时前
从零开始打造Android桌面Launcher应用:原理剖析与完整实现
android
叶羽西1 小时前
Android15增强型视觉系统(EVS)
android
沅霖1 小时前
android kotlin语言中的协程
android·开发语言·kotlin
齊家治國平天下1 小时前
Android 14 系统启动流程深度解析:rc文件的语法、解析及常见语法详解
android·init·rc·init.rc