home: const Text.rich(TextSpan(children: [
TextSpan(text: "Home: "),
TextSpan(
text: "https://flutterchina.club",
style: TextStyle(color: Colors.blue, fontSize: 20),
),
])));
其中style
和 text
属性代表该文本片段的样式和内容。 children
是一个TextSpan
的数组,也就是说TextSpan
可以包括其他TextSpan
。而recognizer
用于对该文本片段上用于手势进行识别处理。下面我们看一个效果(图3-4),然后用TextSpan
实现它。
- 上面代码中,我们通过 TextSpan 实现了一个基础文本片段和一个链接片段,然后通过
Text.rich
方法将TextSpan
添加到 Text 中,之所以可以这样做,是因为 Text 其实就是 RichText 的一个包装,而RichText 是可以显示多种样式(富文本)的 widget。 _tapRecognizer
,它是点击链接后的一个处理器(代码已省略),关于手势识别的更多内容我们将在后面单独介绍。