第六十二回:Chip Widget

news/2024/7/24 11:18:08 标签: flutter, 移动开发, chip, 浮动按钮

文章目录

  • 概念介绍
  • 使用方法
  • 示例代码
  • 其它种Chip

我们在上一章回中介绍了Slider Widget相关的内容,本章回中将介绍如何使用Chip Widget.闲话休提,让我们一起Talk Flutter吧。

概念介绍

本文中提到的Chip Widget在屏幕上显示一小块区域,类似悬浮的按钮,通常在网页类操作中比较常见,比如最近的搜索记录,或者视频中的弹幕。在实际项目中使用场景不是很多,不过本章回中还是准备去介绍它的使用方法。

使用方法

和其它的组件一样,Chip Widget提供了相关的属性来控自己,下面是一些常用的属性:

  • label属性:主要用来显示文本内容,类似于Button上的文本;
  • labelStyle属性:主要用来修改label中文字的style;
  • backgroundColor属性:主要用来修改整个chip组件的背景颜色;
  • avatar属性:主要用来在label显示的文字前面添加一个圆形文字或者图标;
  • deleteIcon属性:主要用来在label显示的文字后面添加图标;
  • deleteIconColor属性:主要用来修改deleteIcon属性中图标的颜色;
  • onDeleted属性:主要用来响应deleteIcon属性中图标的点击事件;

上面介绍的这些属性中只有第一个属性是必选属性,其它属性都是可选属性,我们可以依据项目需求自行选择其中的属性;此外,还有一个需要注意的是只有onDelete属性有值的时候deleteIcon属性中对应的图标才能被显示出来,否则该图标不会被显示。

示例代码

Chip(
  label: Text('label'),
  backgroundColor: Colors.purpleAccent,
  avatar: CircleAvatar(
  backgroundColor: Colors.pinkAccent,
  child: Text("Avatar"),
  backgroundImage: AssetImage("images/ex.png"),
  ),
  //该属性只有设置onDeleted属性时才起作用,否则看不到图标,图标在尾部和头部相对应
  deleteIcon: Icon(Icons.delete),
  deleteIconColor: Colors.redAccent,
  onDeleted:()=>print('onDeleted callback'),
  //修改label中文字的style
  labelStyle: TextStyle(
    color: Colors.pink,
    fontSize: 21,
    backgroundColor: Colors.grey,
  ),
),

上面的代码中综合使用了各种属性,我们在相关地方都添加了注释,以方便大家理解代码。 上面的代码只是一个核心代码,完整的代码在Github上的ex028文件中,建议大家参考完整代码中的内容,自己动手编译程序,体会一下Chip这个组件的使用方法。

其它种Chip

Chip组件还有其它类似的组件,这些组件主要是用来响应事件的,常用的组件有InputChipActionChip,这两种组件与Chip组件最大的区别是多了一个onPress属性,该属性主要用来响应事件,类似按钮中的事件。我在这里就提供示例代码了,建议大家参考完整文件中的示例代码,同时自己动手去实践。

看官们,关于Chip Widget相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!


http://www.niftyadmin.cn/n/458607.html

相关文章

软件测试 -- 思考与实践 2 测试小问题

知而好问,然后能才。-- 《荀子 . 儒效》 释译:聪明而又虚心请教,然后才能够成才。 问题互动一直是各大论坛的热门页面,几楼、跟贴。。。一问一答间进行着有效或云里雾里的沟通。或褒或贬,或一本正经或唏嘘调侃&…

CENTOS上的网络安全工具(二十五)SPARK+NetSA Security Tools容器化部署(1)

一、第三代YAF YAF(Yet Another Flowmeter)是作为CERT NetSA安全工具套件的传感器部分存在的,支持输入实时数据流和PCAP文件,解析并输出流数据,或针对特定协议的深包检测元数据。目前,YAF在整个系统的作用如…

推荐5 款好用的 Linux 音乐播放器

目前 Linux 上有几十个音乐播放器,这使得找到一个最好用的变成很困难。之前我们已经回顾了其中的一些播放器,如 Cantata,Exaile,甚至不那么出名的 Clementine,Nightingale 和 Quod Libet。 在本篇文章中我将涵盖更多的…

《被讨厌的勇气》书摘心得之让干涉你生活的人见鬼去(1)

作者: 岸见一郎 / 古贺史健 译者: 渠海霞 是一本惊艳的书,是一本值得反复阅读的书 自由就是不再寻求认可? 青年:您上次说今天要讨论自由吧?哲人:是的,你考虑过自由是什么了吗?青年:…

ubuntu20.4服务器安装mysql社区版并开放3306端口

您可以按照以下步骤在Ubuntu上安装MySQL社区版: 更新软件包列表: sudo apt-get update下载MySQL社区版的APT存储库配置文件: wget https://dev.mysql.com/get/mysql-apt-config_0.8.19-1_all.deb安装APT存储库配置文件: sudo …

【T+】畅捷通T+直接升级后,原端口无法使用提示端口占用。

【问题描述】 在使用畅捷通T软件过程中,由于软件可以直接升级, 即:原软件是T16.0版本,可以直接运行T18.0的程序进行软件、数据升级。无需将16.0进行卸载,再安装18.0进行数据升级。 但这样直接升级后,原来的…

k8s控制器之DaemonSet--第五弹更新 DaemonSet

DaemonSet 更新策略 DaemonSet 有两种更新策略: OnDelete: 使用 OnDelete 更新策略时,在更新 DaemonSet 模板后,只有当你手动删除老的 DaemonSet pods 之后,新的 DaemonSet Pod 才会被自动创建。跟 Kubernetes 1.6 以前的版本类…

MyBatis第八讲:MyBatis集成PageHelper实现分页

十、MyBatis分页实现 10、1分页实现 在数据查询中,经常遇到大批量数据的查询,在显示过程中,为了缓解数据获取压力,也为了用户体验的提高,经常使用分页技术实现数据查询。常规分页查询主要使用SQL语句中的limit关键字…