关于 Flutter 中的 RichText 组件,你了解多少?
大家好,我是坚果
今天给大家带来的是 RichText 组件,他里面有个 text 属性,RichText 显示的文本内容是 TextSpan 类型,他不是一个简单的 string,而是 TextSpan 类型,TextSpan 类型是一个可以无限传递的树形结构,每个节点出了 text 属性,还可以通过 style 属性,设置自定义文字样式。甚至通过 children 属性,传入一个 TextSpan 列表作为子节点,已实现叠加和嵌套文字样式的功能。然后大家有没有疑问,关于红色的这个是如何设置的,这个我可以称呼它为碰撞检测,以便完成 TextSpan 树中某一片段的建设。recognizer: TapGestureRecognizer()这个属性就可以做到,当然,还有一个组件也有类似的功能,是什么呢?GestureDetector,大家可以对他也了解了解。
其实关于 RichText 组件还是有很多属性的,比如 textScaleFactor 是放大系数,textAlign 是文字对其方式,softWrap 是否允许多行显示。
复制代码
复制代码
好的,完整的源代码就在上面,大家可以自己运行,试一下具体的效果,总的来说体验还是蛮不错的,这个组件的应用场景主要就是可以用来显示一段包含不同样式的文本。希望大家通过本文,对他有一个基础的了解。
版权声明: 本文为 InfoQ 作者【坚果】的原创文章。
原文链接:【http://xie.infoq.cn/article/8a060e0c97d173718d3274647】。文章转载请联系作者。
评论