forked from lxm_flutter/FlutterUnit
🎨 优化展示组件代码的存在形式
This commit is contained in:
Binary file not shown.
@@ -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,
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -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,
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -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();
|
||||
}
|
||||
}
|
||||
18
lib/views/widgets/StatelessWidget/CloseButton/node1_base.dart
Executable file
18
lib/views/widgets/StatelessWidget/CloseButton/node1_base.dart
Executable 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();
|
||||
}
|
||||
}
|
||||
@@ -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> {
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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
|
||||
Reference in New Issue
Block a user