switch组件的功能与用法

文章目录

  • 1 概念介绍
  • 2 使用方法
  • 3 示例代码

我们在上一章回中介绍了PageView这个Widget,本章回中将介绍Switch Widget.闲话休提,让我们一起Talk Flutter吧。

在这里插入图片描述

1 概念介绍

我们在这里介绍的Switch是指左右滑动的开关,常用来表示某项设置是打开还是关闭。Flutter中使用Switch类表示该Widget。本章回中将详细介绍它的用法。

2 使用方法

和其它和Widget一样,Switch提供了一些属性来控制自己,接下来我们将介绍这些常用的属性:

  • value属性,该属性表示开关的状态,它有两个值true和false,分别表示Switch打开和关闭;
  • onChanged属性,该属性是一个方法,当开关的状态发生变化时回调它,从方法的参数中可以得到开关的状态;
  • activeColor属性,该属性表示开关打开时的颜色,如果不设置默认为绿色;
  • inactiveThumbColor属性,该属性表示开关关闭时图片的颜色,如果不指定默认为灰色;
  • inactiveTrackColor属性,该属性表示开关关闭时轨道的颜色,如果不指定默认为灰色;
    注意:开关打开时的颜色通过一个属性可以控制,关闭时的颜色通过两个属性来控制。我们在这里说的图片是指开关上的小圆形,该图片可以通过相关的属性来修改。轨道
    是指开关滑动时的轨迹。上面介绍的属性中前两个是必选属性,其它属性是可选属性;

3 示例代码

Widget build(BuildContext context) {return Scaffold(appBar: AppBar(backgroundColor: Colors.purpleAccent,title: const Text("Example of Switch Widget"),),body: Container(color: Colors.lightBlue,alignment: Alignment.center,width: 92,height: 92,child: Switch(//开关打开时的颜色activeColor: Colors.purpleAccent,//开关没有打开时的颜色inactiveThumbColor: Colors.yellow,inactiveTrackColor: Colors.yellow,value: setValue,onChanged: (v) {print("value is ${v}");setState(() {setValue = v;});},),),);
}

上面的代码中,我们把Switch放到了容器中,并且使用不同的颜色来突出开关的效果。此外,我们在onChanged属性对应的方法中通过setState()方法修改了value
属性的值,这样可以让开关与滑动保持联动,如果不这样做,滑动开关时它的状态会变化,松开开关后它会自动恢复成初始状态.在上面的代码中我本来想通过Switch外
面的容器来修改它的大小,但是发现没有效果,目前还没有找到合适的方法来修改它的大小,以后找到后再和大家分享。
看官们,关于Switch Widget相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/69202.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++ 复习总结记录九

C 复习总结记录九 主要内容 1、list 介绍及使用 2、list 剖析及模拟实现 3、list 与 vector 对比 一 list 介绍及使用 List 相关文档 1、List 在任意位置进行插入和删除的序列式容器 O(1) ,且该容器可前后双向迭代 2、List 底层是带头双向循环链表&#xff…

速通JS中的函数作用域与全局污染

函数作用域与全局污染 在 JavaScript 编程实践中,函数作用域和全局污染是两个核心概念,对代码的健壮性、可维护性及协作开发的有效性具有深远影响。函数作用域通过限制变量的访问范围来减少干扰,而全局污染则可能导致命名冲突和难以排查的错…

从音频到 PDF:AI 全流程打造完美英文绘本教案

今天把英文绘本的自学教案自动生成流程完成了,我分享一下整个实现思路,让你也轻松搞定英文绘本教案的产出,让孩子的学习之路更加顺畅。  从音频到 PDF:AI 全流程打造完美英文绘本教案 一、音频转文本:AI 助力第一步 …

(5)STM32 USB设备开发-USB键盘

讲解视频:2、USB键盘-下_哔哩哔哩_bilibili 例程:STM32USBdevice: 基于STM32的USB设备例子程序 - Gitee.com 本篇为使用使用STM32模拟USB键盘的例程,没有知识,全是实操,按照步骤就能获得一个STM32的USB键盘。本例子是…

初步认识操作系统(Operator System)

目录 一、概念二、设计OS的目的三、定位四、操作系统上下的分级五、如何理解 "管理"六、总结 一、概念 任何计算机系统都包含一个基本的程序集合,称为操作系统(OS)。操作系统包括: 内核(进程管理,内存管理&#xff0c…

LINUX 平台最快子网路由转发,内核使能选项配置

阅读本文之间,可线性参考以下文献。 Linux 命令行配置为单臂旁路由。_linux单臂路由-CSDN博客 Linux 软路由命令行配置(参考)_linux软路由-CSDN博客 VGW在 Windows 平台上局域网就绪的旁路由器程序_windows旁路由-CSDN博客 本文介绍 LINUX…

vue中onclick如何调用methods中的方法

文章目录 前言一、代码一开始效果二、解决方案 前言 今天在开发vue项目中使用的第三方地图,地图上绘制的marker内容需要自定义,因为绘制的内容是原生HTML,所以遇到点击事件的时候就用了onclick来定义,此时想要调用methods中的方法…

python创建一个httpServer网页上传文件到httpServer

一、代码 1.server.py import os from http.server import SimpleHTTPRequestHandler, HTTPServer import cgi # 自定义请求处理类 class MyRequestHandler(SimpleHTTPRequestHandler):# 处理GET请求def do_GET(self):if self.path /:# 响应200状态码self.send_response(2…

一文讲解Java中的重载、重写及里氏替换原则

提到重载和重写,Java小白应该都不陌生,接下来就通过这篇文章来一起回顾复习下吧! 重载和重写有什么区别呢? 如果一个类有多个名字相同但参数不同的方法,我们通常称这些方法为方法重载Overload。如果方法的功能是一样…

Java Swing 基础组件详解 [论文投稿-第四届智能系统、通信与计算机网络]

大会官网:www.icisccn.net Java Swing 是一个功能强大的 GUI 工具包,提供了丰富的组件库用于构建跨平台的桌面应用程序。本文将详细讲解 Swing 的基础组件,包括其作用、使用方法以及示例代码,帮助你快速掌握 Swing 的核心知识。 一…

前端小案例——520表白信封

前言:我们在学习完了HTML和CSS之后,就会想着使用这两个东西去做一些小案例,不过又没有什么好的案例让我们去练手,本篇文章就提供里一个案例——520表白信封 ✨✨✨这里是秋刀鱼不做梦的BLOG ✨✨✨想要了解更多内容可以访问我的主…

PyTorch广告点击率预测(CTR)利用深度学习提升广告效果

目录 广告点击率预测问题数据集结构广告点击率预测模型的构建1. 数据集准备2. 构建数据加载器3. 构建深度学习模型4. 训练与评估 总结 广告点击率预测(CTR,Click-Through Rate Prediction)是在线广告领域中的重要任务,它帮助广告平…

【信息系统项目管理师-选择真题】2017上半年综合知识答案和详解

更多内容请见: 备考信息系统项目管理师-专栏介绍和目录 文章目录 【第1题】【第2题】【第3题】【第4题】【第5题】【第6题】【第7~8题】【第9题】【第10题】【第11题】【第12题】【第13~14题】【第15题】【第16题】【第17题】【第18题】【第19题】【第20题】【第21题】【第22题…

Github 2025-01-25Rust开源项目日报Top10

根据Github Trendings的统计,今日(2025-01-25统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Rust项目10Python项目1Vue项目1JavaScript项目1Deno: 现代JavaScript和TypeScript运行时 创建周期:2118 天开发语言:Rust, JavaScript协议类型…

每日一题--合并二叉树

合并二叉树 问题描述 已知两颗二叉树,将它们合并成一颗二叉树。合并规则是:如果节点存在于两棵树中,则将节点值相加;如果某个节点在一棵树中不存在,则直接使用另一棵树的节点值。例如: 两颗二叉树如下&a…

云计算的概念与特点:开启数字化时代的新篇章

在当今数字化时代,云计算(Cloud Computing)已经成为推动技术创新和业务转型的核心力量。无论是大型企业、中小型企业,还是个人用户,云计算都为其提供了高效、灵活和经济的解决方案。本文将深入探讨云计算的概念及其核心特点,帮助读者全面了解这一革命性技术。 © ivw…

Arcgis国产化替代:Bigemap Pro正式发布

在数字化时代,数据如同新时代的石油,蕴含着巨大的价值。从商业决策到科研探索,从城市规划到环境监测,海量数据的高效处理、精准分析与直观可视化,已成为各行业突破发展瓶颈、实现转型升级的关键所在。历经十年精心打磨…

分布式机器学习中【拓扑】与【通信】的区别和联系

在分布式机器学习中,拓扑和通信是两个重要的概念,它们虽然有一定的关联,但侧重点不同。下面我会逐一解释它们的定义、区别及其联系: 1. 拓扑(Topology): 拓扑指的是系统中不同节点&#xff08…

【fly-iot飞凡物联】(20):2025年总体规划,把物联网整套技术方案和实现并落地,完成项目开发和课程录制。

前言 fly-iot飞凡物联专栏: https://blog.csdn.net/freewebsys/category_12219758.html 1,开源项目地址进行项目开发 https://gitee.com/fly-iot/fly-iot-platform 完成项目开发,接口开发。 把相关内容总结成文档,并录制课程。…

MFC结构体数据文件读写实例

程序功能将结构体内数组数据写入文件和读出 2Dlg.h中代码: typedef struct Student {int nNum[1000];float fScore;CString sss;}stu; class CMy2Dlg : public CDialog { // Construction public:CMy2Dlg(CWnd* pParent NULL); // standard constructorstu stu1; ... } 2Dl…