
Android在一个TextView里显示不同样式的字体
发布日期:2021-05-14 18:05:22
浏览次数:19
分类:精选文章
本文共 2835 字,大约阅读时间需要 9 分钟。
Android TextView 样式优化指南
开发过程中,给 TextView 赋予多样化的样式功能,可以提升用户体验。本文将详细说明如何通过 SpannableString 实现多种样式效果。
1. 背景色、粗体、字体大小
效果展示
通过设置背景颜色、字体加粗和特定字体大小,可以让文本在视觉上更加突出和个性化。
代码示例
TextView textView = (TextView) findViewById(R.id.text_view_font_1);SpannableString string = new SpannableString("修改背景色、粗体、字体大小");// 设置背景色string.setSpan(new BackgroundColorSpan(Color.RED), 2, 5, Spannable.SPAN_INCLUSIVE_INCLUSIVE);// 设置粗体string.setSpan(new StyleSpan(Typeface.BOLD), 6, 8, Spannable.SPAN_INCLUSIVE_INCLUSIVE);// 设置字体大小string.setSpan(new AbsoluteSizeSpan(50), 11, 13, Spannable.SPAN_INCLUSIVE_INCLUSIVE);textView.setText(string);
2. 斜体加粗
效果展示
中文环境下,您将看到文本的斜体效果。
代码示例
TextView textView = (TextView) findViewById(R.id.text_view_font_1);SpannableString string = new SpannableString("Hello TextView");// 设置斜体加粗string.setSpan(new StyleSpan(Typeface.BOLD_ITALIC), 0, 5, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);textView.setText(string);
3. 字体颜色
效果展示
只改变特定部分的字体颜色,其他部分保持不变。
代码示例
TextView textView = (TextView) findViewById(R.id.text_view_font_1);SpannableString string = new SpannableString("设置红色字体");// 设置红色字体string.setSpan(new ForegroundColorSpan(Color.RED), 2, 4, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);textView.setText(string);
4. 下划线
效果展示
文本中指定部分会显示下划线效果。
代码示例
TextView textView = (TextView) findViewById(R.id.text_view_font_1);SpannableString string = new SpannableString("带下划线的文字");// 设置下划线string.setSpan(new StrikethroughSpan(), 1, 4, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);textView.setText(string);
5. 字体宽度
效果展示
通过设置缩放比例,增强文字的表现力。
代码示例
TextView textView = (TextView) findViewById(R.id.text_view_font_1);SpannableString string = new SpannableString("“胖”文字和“瘦”文字");// 设置宽度为原文字面2倍string.setSpan(new ScaleXSpan(2.0f), 1, 2, Spannable.SPAN_INCLUSIVE_INCLUSIVE);// 设置宽度为原文字面0.5倍string.setSpan(new ScaleXSpan(0.5f), 7, 8, Spannable.SPAN_INCLUSIVE_INCLUSIVE);textView.setText(string);
6. 删除线
效果展示
文本中指定部分会显示删除线效果。
代码示例
TextView textView = (TextView) findViewById(R.id.text_view_font_1);SpannableString string = new SpannableString("把“删除”划掉");// 设置删除线string.setSpan(new StrikethroughSpan(), 2, 4, Spannable.SPAN_INCLUSIVE_INCLUSIVE);textView.setText(string);
7. 前景色
效果展示
指定内容前的字体颜色会改变。
代码示例
TextView textView = (TextView) findViewById(R.id.text_view_font_1);SpannableString string = new SpannableString("设置前景色为红色");// 设置红色前景色string.setSpan(new ForegroundColorSpan(Color.RED), 6, 7, Spannable.SPAN_INCLUSIVE_INCLUSIVE);textView.setText(string);
8. URL
效果展示
特定文本会显示链接形式。
代码示例
TextView textView = (TextView) findViewById(R.id.text_view_font_1);final String contact = "Email: kongqw@foxmail.com\n" + "Phone: 188123456789\n" + "Fax: +47-12345678\n" + "HTTP: http://blog.csdn.net/q4878802";textView.setAutoLinkMask(Linkify.ALL);textView.setText(contact);
这些样式化设置为开发者提供了更多的文本定制可能性,让您的应用用户体验更加丰富。通过灵活运用这些功能,您可以根据需求进行个性化定制。
发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2025年04月07日 12时07分49秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
SpringBoot使用@Email报错误
2019-03-13
SpringBoot之国际化
2019-03-13
Maven 输入依赖名字不提示
2019-03-13
Rabbitmq的内存磁盘监控
2019-03-13
访问servlet时弹出文件下载框解决方法
2019-03-13
IDEA中同时push项目到gitee和github
2019-03-13
tinyproxy正向代理
2019-03-13
codeforces 59A-C语言解题报告
2019-03-13
Fast Matrix Calculation HDU-4965 矩阵快速幂
2019-03-13
OpenCv 金字塔之上采样与下采样
2019-03-13
华为手机麦芒9参数配置
2019-03-13
Java中的注释
2019-03-13
Linux+Nginx+Asp.net Core及守护进程部署
2019-03-13
计算机网络--大厂常见问题(2)
2019-03-13
2021-05-12书城项目第一阶段:提交表单
2019-03-13
cookie、session、token
2019-03-13
vue项目更改title
2019-03-13
IDEA-@Slf4j和log标签&@Data(Lombok)无效
2019-03-13