Flutter Chip 标签

参数详解

属性说明
avatar在芯片标签之前显示的小部件
label标签文字
labelStyle标签文字样式
labelPadding标签文字内间距
deleteIcon添加图标按钮 与onDeleted 配合使用,单独使用无效
onDeleted图标按钮监听
deleteIconColordeleteIcon颜色
deleteButtonTooltipMessagedeleteIcon长按文字解说
shape形状
clipBehavior裁剪  默认Clip.none(不裁剪)
backgroundColor背景颜色
padding内间距
materialTapTargetSize配置tap目标的最小大小
elevation阴影高度
shadowColor阴影颜色

代码示例

Chip(label: Text('Text'),),

 进行了一些属性设置

Chip(
  avatar: Icon(Icons.add_alert),
  label: Text('buttom'),
  deleteIcon: Icon(Icons.close),
  deleteIconColor:Colors.red,
  deleteButtonTooltipMessage:'干啥',
  labelStyle: TextStyle(color: Colors.white),
  backgroundColor: Colors.blue,
  elevation:20,
  shadowColor:Colors.red,
  onDeleted: (){
    print('object');
  },
),

我们发现,每一个Chip都要设置很多属性,如果Chip太多,会造成多次编写重复代码,
此时,我们可以使用ChipTheme组件,看代码:

ChipTheme(
//统一设置Chip组件样式
  data: ChipThemeData(
    backgroundColor:Colors.red,
    disabledColor:Colors.yellow,
    selectedColor:Colors.blue,
    secondarySelectedColor:Colors.black,
    labelPadding:EdgeInsets.fromLTRB(10, 0, 10, 0),
    padding:EdgeInsets.all(0),
    shape:BeveledRectangleBorder(borderRadius: BorderRadius.circular(20.0),side: new BorderSide(style: BorderStyle.none,)),
    labelStyle:TextStyle(color: Colors.white),
    secondaryLabelStyle:TextStyle(color: Colors.white),
    brightness:Brightness.dark,
    elevation:20,
    shadowColor:Colors.lime,
  ),
  child: Wrap(
    spacing: 8.0,
    runSpacing: 10.0, 
    children: <Widget>[
      Chip(label: Text('Text'),),
      Chip(label: Text('TextField'),),
      Chip(label: Text('Form'),),
      Chip(label: Text('Image'),),
    ],
  ), 
),

效果图

     

完整代码

查看完整代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

马志武

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值