Flutter开发⽇常⼏种Button的使⽤(OutlinedButton、
Elevate。。。
最近学习Flutter开发,到正式上⼿公司原有项⽬重构有段时间了,知识点零零碎碎的,还是在博客⾥记录更新⼀下吧,会根据我开发中遇到的内容不断总结更新。
⽆⾊背景,有边框的按钮,如下图所⽰:
代码实现如下:
1Container(
2 padding: const EdgeInsets.all(14),
3 child: Column(
4 crossAxisAlignment: CrossAxisAlignment.start,//内部组件靠左对其
5 children: [
6 Container(
7 margin: ly(left: 2),
8 child: Text(
9 '企业征信报告上传',
10 style: const TextStyle(
11 fontSize: 14, color: ColorsUtil.fontColor303133),
12 ),
13 ),
14 Container(
15 margin: ly(left: 2, top: 4, bottom: 16),
16 child: const Text(
17 '⽀持上传CSV、XLSX格式',
18 style: TextStyle(fontSize: 14, color: ColorsUtil.fontColor919399),
19 ),
20 ),
21 SizedBox(
22 width: double.infinity,
23 child: OutlinedButton.icon(
24 icon: const Icon(
25 Icons.add,
26 color: ColorsUtil.brand100Color3376FE,
27 ),
28 onPressed: () {
29 _selectFile(item);
30 },
31 label: const Text(
32 '上传附件',
33 style: TextStyle(
34 fontSize: 14, color: ColorsUtil.brand100Color3376FE),
35 ),
36 style: OutlinedButton.styleFrom(
37 shape: RoundedRectangleBorder(
38 borderRadius: BorderRadius.circular(8),
39 ),
40 side: const BorderSide(
41 width: 1, color: ColorsUtil.brand100Color3376FE),
42 ),
43 ),
44 ),
45 ],
46 ),
47 )
OutlinedButton可直接使⽤,也可以加icon的⽅式在内部添加⼀个图表,就像我图⾥⾯的+号,按钮内部的⽂字可以在label属性⾥实现,在style属性⾥可以通过OutlinedButton.styleFrom来设定边框的样式,⽐如边框的圆⾓以及边框的颜⾊宽度等。
接下来是有背景⾊的Button,如下图所⽰:
代码实现如下:
1 Container(
2 width: double.infinity,
3 padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 10),
4 child: ElevatedButton(
5 onPressed: () {
6
7 },
8 child: const Text(
9 '保存并分析',
10 style: TextStyle(fontSize: 16),
11 ),
12 style: ButtonStyle(
13 shape: MaterialStateProperty.all(RoundedRectangleBorder(
14 borderRadius: BorderRadius.circular(8))),
textstyle15 padding: MaterialStateProperty.all(
16 const EdgeInsets.symmetric(vertical: 12)),
17 backgroundColor: MaterialStateProperty.all(
18 ColorsUtil.brand100Color3376FE)),
19 ),
20 )
简单使⽤如上述所⽰,在style中通过ButtonStyle来设置相应的按钮形状、边距、背景⾊都属性。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论