前言
Text是Flutter中的文本组件,本文会介绍Text中的常见属性及含义。
Text属性
| 属性 | 含义 |
|---|---|
| Key | Key字符串,唯一标识 |
| data | String字符串 |
| style | 如果非空,则用于此文本的样式,详情见下 |
| strutStyle | 支柱样式,用于文本的垂直布局 |
| textAlign | 文本水平对齐样式 |
| textDirection | 文本方向 |
| locale | 基本不用,默认情况下它的值是从封闭应用程序继承的 |
| softWrap | 是否换行 |
| overflow | 文本溢出处理 |
| textScaleFactor | 字体显示倍率 |
| maxLines | 最大行数 |
| semanticsLabel | 文本的替代语义标签(很少用) |
| textWidthBasis | 定义如何测量渲染文本的宽度 |
| textHeightBehavior | 定义段落如何将 [TextStyle.height] 应用于第一行的上升和最后一行的下降 |
TextStyle属性
用来定义Text中文字的各种属性。常用的属性值也非常好理解。
| TextStyle属性 | 含义 |
|---|---|
| inherit | 是否继承 |
| color | 字体颜色 |
| backgroundColor | 背景颜色 |
| fontSize | 字号(字体大小) |
| fontWeight | 字重(字体厚度) |
| fontStyle | normal 或 italic(正规体或斜体) |
| letterSpacing | 字母间隔(负值可以让字母更紧凑) |
| wordSpacing | 单词间隔(负值可以让单词更紧凑) |
| textBaseline | 文本绘制基线(alphabetic/ideographic) |
| height | 行距高度(字体大小的倍数) |
| leadingDistribution | height 不为 null 时,文本上下的垂直空间分布方式 |
| locale | 很少设置,用于选择区域特定字形的语言环境。 |
| foreground | 文本前景绘制(可用于实现特殊、渐变字体等,Color需为null) |
| background | 文本背景绘制(绘制渐变背景等,backgroundColor需为null) |
| shadows | 阴影效果(支持多个阴影以实现来自多个光源的照明效果) |
| fontFeatures | 添加字体时的选项功能(例如,一种字体可能同时提供两种数字样式) |
| decoration | 文本绘制装饰(如下划线underline、横线lineThrough、顶线overline) |
| decorationColor | 文本绘制装饰颜色 (如下划线颜色) |
| decorationStyle | 文本绘制装饰样式 (如下划线样式: 虚线dashed、点线dotted、双线double、实线solid、波浪线wavy) |
| decorationThickness | 文本绘制装饰粗细倍数(如粗体的删除可能需要更粗的删除线) |
| debugLabel | 不常用,调试模式下的可读描述 |
| fontFamily | 字体风格 |
| fontFamilyFallback | 不常用,字体列表,当首选字体中没有字符对应的字体时将在列表中依次查询,查询结束依旧找不到对应字体时将使用默认字体 |
| package | 不常用,创建文本样式,如果字体系列是在包中定义的,则包参数必须为非空。与 fontFamily 参数结合来设置字体属性 |
| overflow | 文本溢出处理,若text中已设置此属性则textStyle中的设置不生效 |