Files
FlutterUnit/lib/views/widgets/StatelessWidget/Theme/node1_base.dart
2021-08-29 11:29:45 +08:00

65 lines
1.8 KiB
Dart

import 'package:flutter/material.dart';
/// create by 张风捷特烈 on 2020-03-29
/// contact me by email 1981462002@qq.com
/// 说明:
// {
// "widgetId": 168,
// "name": '文字样式-ThemeData#TextTheme',
// "priority": 1,
// "subtitle":
// "子组件可以通过ThemeData.of获取主题的数据进行使用。",
// }
class TextThemeDemo extends StatelessWidget {
@override
Widget build(BuildContext context) {
TextTheme queryData = Theme.of(context).textTheme;
Map<String, TextStyle> styles = {
"headline: ": queryData.headline!,
"title: ": queryData.title!,
"subhead: ": queryData.subhead!,
"body1: ": queryData.body1!,
"body2: ": queryData.body2!,
"button: ": queryData.button!,
"overline: ": queryData.overline!,
"subtitle: ": queryData.subtitle!,
"caption: ": queryData.caption!,
"display1: ": queryData.display1!,
"display2: ": queryData.display2!,
"display3: ": queryData.display3!,
"display4: ": queryData.display4!,
};
return Container(
child: Column(
children: styles.keys
.map((String styleInfo) => buildItem(styleInfo, styles[styleInfo]!))
.toList(),
),
);
}
Widget buildItem(String styleInfo, TextStyle style) => Column(
children: <Widget>[
Padding(
padding: const EdgeInsets.all(8.0),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Text(
styleInfo,
style: TextStyle(fontSize: 16, fontWeight: FontWeight.bold),
),
Text(
"@toly",
style: style,
)
],
),
),
const Divider(
height: 1,
)
],
);
}