🎨 优化展示组件代码的存在形式

This commit is contained in:
toly
2020-04-26 16:53:09 +08:00
parent 8c070f0e53
commit b1781621f1
7 changed files with 80 additions and 99 deletions

Binary file not shown.

View File

@@ -1,18 +0,0 @@
import 'package:flutter/material.dart';
import 'package:flutter_unit/components/permanent/panel.dart';
class CustomCircleAvatar extends StatelessWidget {
@override
Widget build(BuildContext context) {
return CircleAvatar(
radius: 50,
backgroundImage: AssetImage("assets/images/wy_200x300.jpg"),
foregroundColor: Colors.white,
child: Icon(
Icons.check,
size: 50,
),
);
}
}

View File

@@ -0,0 +1,32 @@
/// create by 张风捷特烈 on 2020/4/25
/// contact me by email 1981462002@qq.com
/// 说明:
// {
// "widgetId": 9,
// "priority": 1,
// "name": "CircleAvatar的表现",
// "subtitle": "【radius】 : 半径 【double】\n"
// "【backgroundImage】 : 图片资源 【ImageProvider】\n"
// "【foregroundColor】: 前景色 【Color】\n"
// "【backgroundColor】: 背景色 【Color】\n"
// "【minRadius】: 最小半径 【double】\n"
// "【maxRadius】: 最大半径 【double】\n"
// "【child】: 孩子组件 【Child】",
// }
import 'package:flutter/material.dart';
class CustomCircleAvatar extends StatelessWidget {
@override
Widget build(BuildContext context) {
return CircleAvatar(
radius: 50,
backgroundImage: AssetImage("assets/images/wy_200x300.jpg"),
foregroundColor: Colors.white,
child: Icon(
Icons.check,
size: 50,
),
);
}
}

View File

@@ -1,10 +0,0 @@
import 'package:flutter/material.dart';
import 'package:flutter_unit/components/permanent/panel.dart';
class CustomCloseButton extends StatelessWidget {
@override
Widget build(BuildContext context) {
return CloseButton();
}
}

View File

@@ -0,0 +1,18 @@
/// create by 张风捷特烈 on 2020/4/25
/// contact me by email 1981462002@qq.com
/// 说明:
// {
// "widgetId": 32,
// "priority": 1,
// "name": "CloseButton点击事件",
// "subtitle": " 点击时会退出当前栈",
// }
import 'package:flutter/material.dart';
class CustomCloseButton extends StatelessWidget {
@override
Widget build(BuildContext context) {
return CloseButton();
}
}

View File

@@ -1,47 +1,8 @@
import 'package:flutter/material.dart';
/// create by on 2020-03-21
/// create by on 2020/4/25
/// contact me by email 1981462002@qq.com
/// :
// {
// "widgetId": 102,
// "name": 'DataTable基本使用',
// "priority": 1,
// "subtitle":
// "【columns】 : 列 【List<DataColumn>】\n"
// "【rows】 : 行 【List<DataRow>】",
// }
class _Bean {
final int id;
final String name;
final String type;
_Bean(this.id, this.name, this.type);
}
class CustomDataTable extends StatelessWidget {
final data = [
_Bean(101, 'DataTable', 'StatelessWidget'),
_Bean(44, 'RangeSlider', 'StatefulWidget'),
_Bean(2, 'Text', 'StatelessWidget'),
_Bean(1, 'Image', 'StatefulWidget'),
];
final columns = ['id', '名称', '类型'];
@override
Widget build(BuildContext context) {
return DataTable(
columns: columns.map((e) => DataColumn(label: Text(e))).toList(),
rows: data
.map((e) => DataRow(cells: [
DataCell(Text('${e.id}')),
DataCell(Text('${e.name}')),
DataCell(Text('${e.type}')),
]))
.toList());
}
}
/// :
// {
// "widgetId": 102,
@@ -53,6 +14,8 @@ class CustomDataTable extends StatelessWidget {
// "【sortAscending】 : 是否顺序 【bool】",
// }
import 'package:flutter/material.dart';
class _BeanOp {
final int id;
final String name;
@@ -104,15 +67,15 @@ class _SortDataTableState extends State<SortDataTable> {
],
rows: data
.map((e) => DataRow(selected: false, cells: [
DataCell(Checkbox(
value: e.select,
onChanged: (v) => _onSelectOne(v, e),
)),
DataCell(Text('${e.id}')),
DataCell(Text('${e.name}'),
showEditIcon: true, onTap: () {}),
DataCell(Text('${e.type}')),
]))
DataCell(Checkbox(
value: e.select,
onChanged: (v) => _onSelectOne(v, e),
)),
DataCell(Text('${e.id}')),
DataCell(Text('${e.name}'),
showEditIcon: true, onTap: () {}),
DataCell(Text('${e.type}')),
]))
.toList());
}
@@ -120,7 +83,7 @@ class _SortDataTableState extends State<SortDataTable> {
setState(() {
_sortAscending = ascending;
data.sort(
(a, b) => ascending ? a.id.compareTo(b.id) : b.id.compareTo(a.id));
(a, b) => ascending ? a.id.compareTo(b.id) : b.id.compareTo(a.id));
});
}
@@ -148,4 +111,4 @@ class _SortDataTableState extends State<SortDataTable> {
}
});
}
}
}

View File

@@ -1,23 +1,19 @@
/// create by on 2020-03-24
/// contact me by email 1981462002@qq.com
/// :
///
// {
// "widgetId": 34,
// "priority": 2,
// "name": "Divider高度和空缺",
// "subtitle": "【indent】: 前面空缺长度 【double】\n"
// "【endIndent】: 后面空缺长度 【double】\n"
// "【height】: 占位高 【double】",
// }
import 'package:flutter/material.dart';
class CustomDivider extends StatelessWidget {
@override
Widget build(BuildContext context) {
var dataColor = [
Colors.red, Colors.yellow,
Colors.blue, Colors.green];
var dataThickness = [1.0, 2.0, 4.0, 6.0];
var data = Map.fromIterables(dataColor, dataThickness);
return Column(
children: dataColor
.map((e) => Divider(
color: e,
thickness: data[e],
))
.toList(),
);
}
}
class HeightDivider extends StatelessWidget {
@override