Text(
'文本是视图体系中的常见控件,用来表现一段特定样式的字符串,就好比Android里的TextView,或是iOS中的UILabel。',
textAlign: TextAlign.center,//居中表现
style: TextStyle(fontWeight: FontWeight.bold, fontSize: 20, color: Colors.red),//20号赤色粗体展示
);
Text相关属性如下:
明确了展示单一样式的文本 Text 的利用方法后,我们再来看看怎样在一段字符串中支持多种混淆展示样式。
混淆展示样式与单一样式的关键区别在于分片,即怎样把一段字符串分为几个片断来管理,给每个片断单独设置样式。
在 Android 中,我们利用 SpannableString 来实现;
在 iOS 中,我们利用 NSAttributedString 来实现;
在 Flutter 中也有类似的概念,即 TextSpan。
界说变量:
const TextStyle blackStyle =TextStyle(color: Colors.black,fontSize:20,fontWeight: FontWeight.bold);
const TextStyle redStyle =TextStyle(color: Colors.red,fontSize:30,fontWeight:FontWeight.bold);
富文本:
Text.rich(
textAlign: TextAlign.center,
TextSpan( children: [
TextSpan(text:'文本是视图体系中常见的控件,它用来表现一段特定样式的字符串,类似', style: redStyle), //第1个片断,赤色样式
TextSpan(text:'Android', style: blackStyle), //第1个片断,玄色样式
TextSpan(text:'中的', style:redStyle), //第1个片断,赤色样式
TextSpan(text:'TextView', style: blackStyle) //第1个片断,玄色样式
]),
);
运行结果:
|