在学习过程中很多常见的方式需要了解一下,在Android中,文本展示使用TextView,iOS中我们使用UILabel来显示文本。看看flutter中是怎么使用的。 1,普通的文本: 直接在text中列出
class MyHomeBody extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Text(
"《将进酒》李白 〔唐代〕"
"\n君不见黄河之水天上来,奔流到海不复回。"
"\n君不见高堂明镜悲白发,朝如青丝暮成雪。"
"\n人生得意须尽欢,莫使金樽空对月。"
"\n天生我材必有用,千金散尽还复来。"
"\n烹羊宰牛且为乐,会须一饮三百杯。"
"\n岑夫子,丹丘生,将进酒,杯莫停。"
"\n与君歌一曲,请君为我倾耳听。"
"\n钟鼓馔玉不足贵,但愿长醉不愿醒。"
"\n古来圣贤皆寂寞,惟有饮者留其名。"
"\n 陈王昔时宴平乐,斗酒十千恣欢谑。"
"\n 主人何为言少钱,径须沽取对君酌。"
"\n五花马、千金裘,呼儿将出换美酒,与尔同销万古愁。",
style: TextStyle(
fontSize: 20,
color: Colors.red
),
);
}
}
字体大小 fontSize、文本颜色 color、字体名称 fontFamily、文本阴影 shadows 等等,这些参数被统一封装到了构造函数中的参数 style 中。 改变其中的布局: textAlign:文本对齐方式 maxLines:最大显示行数 overflow:超出部分显示方式 textScaleFactor:控制文本缩放
class MyHomeBody extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Text(
"《将进酒》李白 〔唐代〕"
"\n君不见黄河之水天上来,奔流到海不复回。"
"\n君不见高堂明镜悲白发,朝如青丝暮成雪。"
"\n人生得意须尽欢,莫使金樽空对月。"
"\n天生我材必有用,千金散尽还复来。"
"\n烹羊宰牛且为乐,会须一饮三百杯。"
"\n岑夫子,丹丘生,将进酒,杯莫停。"
"\n与君歌一曲,请君为我倾耳听。"
"\n钟鼓馔玉不足贵,但愿长醉不愿醒。"
"\n古来圣贤皆寂寞,惟有饮者留其名。"
"\n 陈王昔时宴平乐,斗酒十千恣欢谑。"
"\n 主人何为言少钱,径须沽取对君酌。"
"\n五花马、千金裘,呼儿将出换美酒,与尔同销万古愁。",
textAlign: TextAlign.center,
maxLines: 13,
overflow: TextOverflow.ellipsis,
style: TextStyle(
fontSize: 18,
color: Colors.red
),
);
}
}
几种常见的样式对齐方式的展示。
2,文本中还有富文本的展示 古诗名和作者想要不同的展示和颜色的方式呈现
class MyHomeBody extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Text.rich(
TextSpan(
children: [
TextSpan(text: "《将进酒》",style: TextStyle(fontSize: 20,color: Colors.red,fontWeight: FontWeight.bold)),
TextSpan(text: "李白 〔唐代〕",style: TextStyle(fontSize: 18,color: Colors.green)),
TextSpan(text: "\n君不见黄河之水天上来,奔流到海不复回。"
"\n君不见高堂明镜悲白发,朝如青丝暮成雪。"
"\n人生得意须尽欢,莫使金樽空对月。"
"\n天生我材必有用,千金散尽还复来。"
"\n烹羊宰牛且为乐,会须一饮三百杯。"
"\n岑夫子,丹丘生,将进酒,杯莫停。"
"\n与君歌一曲,请君为我倾耳听。"
"\n钟鼓馔玉不足贵,但愿长醉不愿醒。"
"\n古来圣贤皆寂寞,惟有饮者留其名。"
"\n 陈王昔时宴平乐,斗酒十千恣欢谑。"
"\n 主人何为言少钱,径须沽取对君酌。"
"\n五花马、千金裘,呼儿将出换美酒,与尔同销万古愁。",style: TextStyle(fontSize: 18,color: Colors.blue))
]
),
textAlign: TextAlign.center,
);
}
}
文本的展示,下个版本展示按钮的文本
|