互联网BAT大厂(百度、美团等,关于Flutter文本组件Widget的全面解读
在Flutter中,文本组件是非常重要的,因为它们允许我们在应用程序上显示信息。以下是一些最常见和有用的文本组件:
- Text
Text是最基本的文本组件,用于显示文本。
Text(
'Hello, Flutter!',
style: TextStyle(fontSize: 20),
)
- RichText
RichText可以让你使用不同的样式来显示一段文本。
RichText(
text: TextSpan(
text: 'Hello',
style: TextStyle(fontSize: 20),
children: <TextSpan>[
TextSpan(text: ' Flutter!', style: TextStyle(fontSize: 20, color: Colors.red)),
],
),
)
- DefaultTextStyle
DefaultTextStyle是一个用于设置默认文本样式的组件,它可以被子组件继承。
DefaultTextStyle.of(context).style(
TextSpan(text: 'Hello, Flutter!'),
)
- TextField
TextField是一个输入框组件,用于获取用户输入。
TextField(
decoration: InputDecoration(hintText: '请输入内容'),
)
- TextFormField
TextFormField是一个输入框组件,通常用于表单提交,它可以配置验证器等。
TextFormField(
decoration: InputDecoration(hintText: '请输入内容'),
validator: (value) {
return value.isEmpty ? '输入不能为空' : null;
},
)
- Wrap
Wrap组件可以用于显示一行无法展示全部子组件的情况。
Wrap(
spacing: 8.0,
runSpacing: 4.0,
children: <Widget>[
Chip(label: Text('Hamilton')),
Chip(label: Text('Lafayette')),
// ...
],
)
- OverflowBox
OverflowBox组件可以控制子组件是否在父组件范围内显示。
OverflowBox(
alignment: Alignment.topLeft,
maxWidth: double.infinity,
maxHeight: double.infinity,
child: Container(
color: Colors.blue,
width: 200,
height: 200,
),
)
- SizedBox
SizedBox组件可以控制子组件的大小。
SizedBox(
width: 100.0,
height: 100.0,
child: Container(color: Colors.blue),
)
- FittedBox
FittedBox组件可以调整子组件的大小和位置。
FittedBox(
fit: BoxFit.contain,
child: Icon(null, size: 100),
)
- Card
Card组件是一种带有圆角和阴影的容器,常用于显示相关数据集的卡片。
Card(
child: Column(
children: <Widget>[
ListTile(
title: Text('张三'),
subtitle: Text('个人签名'),
),
Divider(),
ListTile(
title: Text('标题'),
subtitle: Text('详细内容'),
),
],
),
)
- ListTile
ListTile组件是一种用于列表项的组件,通常与ListView组件一起使用。
ListTile(
leading: Icon(Icons.home),
title: Text('家'),
subtitle: Text('我的家
评论已关闭