当前位置: 首页 > news >正文

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相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!

相关文章:

switch组件的功能与用法

文章目录 1 概念介绍2 使用方法3 示例代码 我们在上一章回中介绍了PageView这个Widget,本章回中将介绍Switch Widget.闲话休提,让我们一起Talk Flutter吧。 1 概念介绍 我们在这里介绍的Switch是指左右滑动的开关,常用来表示某项设置是打开还是关闭。Fl…...

cursor重构谷粒商城05——docker容器化技术快速入门【番外篇】

前言:这个系列将使用最前沿的cursor作为辅助编程工具,来快速开发一些基础的编程项目。目的是为了在真实项目中,帮助初级程序员快速进阶,以最快的速度,效率,快速进阶到中高阶程序员。 本项目将基于谷粒商城…...

高等数学学习笔记 ☞ 微分方程

1. 微分方程的基本概念 1. 微分方程的基本概念: (1)微分方程:含有未知函数及其导数或微分的方程。 举例说明微分方程:;。 (2)微分方程的阶:指微分方程中未知函数的导数…...

【探索 Kali Linux】渗透测试与网络安全的终极操作系统

探索 Kali Linux:渗透测试与网络安全的终极操作系统 在网络安全领域,Kali Linux 无疑是最受欢迎的操作系统之一。无论是专业的渗透测试人员、安全研究人员,还是对网络安全感兴趣的初学者,Kali Linux 都提供了强大的工具和灵活的环…...

四方连续贴图是什么意思

上下左右四个方向都是连续的图案,是由一个纹样或几个纹样组成一个单位,向四周重复地连续和延伸扩展而成的图案形式...

RKNN_C++版本-YOLOV5

1.背景 为了实现低延时,所以开始看看C版本的rknn的使用,确实有不足的地方,请指正(代码借鉴了rk官方的仓库文件)。 2.基本的操作流程 1.读取模型初始化 // 设置基本信息 // 在postprocess.h文件中定义,详见…...

k8s优雅重启

理论上处于terminating状态的pod,k8s 就会把它从service中移除了,只用配置一个优雅停机时长就行了。kubectl get endpoints 验证 因此,优雅重新的核心问题,是怎么让空闲长连接关闭,再等待处理中的请求执行完。 一些底…...

三高“高性能、高并发、高可靠”系统架构设计系列文章

目录 高并发系统的艺术:如何在流量洪峰中游刃有余 《数据密集型应用系统设计》读后感与高并发高性能实践案例 系统稳定性与高可用保障的几种思路 软件系统限流的底层原理解析 技术解决方案调研 延迟队列调研 重试调研 异步回调调研 分库分表调研 分布式事…...

opengrok_使用技巧

Searchhttps://xrefandroid.com/android-15.0.0_r1/https://xrefandroid.com/android-15.0.0_r1/ 选择搜索的目录(工程) 手动在下拉框中选择,或者 使用下面三个快捷按钮进行选择或者取消选择。 输入搜索的条件 搜索域说明 域 fullSearc…...

C++资料

InterviewGuide 首页 - 八股精 Releases halfrost/LeetCode-Go GitHub GitHub - GrindGold/CppGuide: 「C/C学习面试指南」一份涵盖大部分 C 程序员所需要掌握的知识。入门、进阶、深入、校招、社招,准备 C 学习& 面试,首选 CppGuide&#xff0…...

基于模糊PID的孵化箱温度控制系统(论文+源码)

1系统方案设计 本课题为基于模糊PID的孵化箱温度控制系统,其以STM32最小系统与模糊PID控制器为控制核心。系统主要包括数据采集模块、处理器模块、电机控制模块。 数据采集模块由温度传感器构成,通过温度传感器感应温度变化,获得待处理的数据…...

景联文科技加入AIIA联盟数据标注分委会

2025年1月16日,中国人工智能产业发展联盟(简称AIIA)数据委员会数据标注分委会(以下简称“分委会”)正式成立。景联文科技成为第一批AIIA联盟数据标注分委会委员单位。 数据标注分委会的成立旨在搭建数据标注领域产学研…...

1-1 飞机大战项目框架搭建

前言: 基于本人巩固C语言编写,仅供学习参考 1.0 框架搭建 搭建完成后状态 C语言飞机大战框架 使用loadimage时出现波浪线的错误如何解决,这个问题主要是编码格式不对造成的,我们需要修改系统的编码格式,将unicode编码格…...

【C++高并发服务器WebServer】-7:共享内存

本文目录 一、共享内存1.1 shmget函数1.2 shmat1.3 shmdt1.4 shmctl1.5 ftok1.6 共享内存和内存映射的关联1.7 小demo 二、共享内存操作命令 一、共享内存 共享内存允许两个或者多个进程共享物理内存的同一块区域(通常被称为段)。由于一个共享内存段会称…...

RabbitMQ 多种安装模式

文章目录 前言一、Windows 安装 RabbitMq1、版本关系2、Erlang2.1、下载安装 Erlang 23.12.2、配置 Erlang 环境变量 3、RabbitMQ3.1、下载安装 RabbitMQ 3.8.93.2、环境变量3.3、启动RabbitMQ 管理插件3.3、RabbitMQ3.4、注意事项 二、安装docker1、更新系统包:2、…...

C++ 包装器与绑定器的应用之回调函数的实现

回调函数的实现 在消息队列和网络库的框架中,当接收到消息(报文)时,回调用户自定义的函数对象,把消息(报文)参数传给它,由它决定如何处理。 queue参考文章:C queue(STL queue&…...

Baichuan大模型Base、Chat、Instruct等版本的区别

Baichuan大模型Base与Instruct等版本的区别解析 Baichuan大模型作为国内领先的开源语言模型,其不同版本(如Base、Chat、Instruct等)在训练目标、应用场景和性能特点上存在显著差异。以下是基于公开技术文档和行业分析的详细对比:…...

3.DrawCall的概念

DrawCall是渲染管线中的一个重要概念,指的是CPU向GPU发送的一个绘制命令,告诉GPU:“请根据我提供的数据,画一个物体(或一部分物体)。” 通俗易懂讲解:DrawCall就像给画师下订单 想象你是一个老…...

ubuntu电脑调用摄像头拍摄照片

一、 1、先装环境 conda create -n text python3.8 -y conda activate text 2、 pip install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple 1、连接摄像头拍摄收集数据集 capture_image5.py import cv2 as cv import os import datetime import n…...

PyQt4 的图片切割编辑器

一、 编辑器功能明确 允许用户加载图片、选择切割模式、对切割后的图片片段进行操作(如移动、复制、粘贴、删除等),并支持撤销和重做操作。 环境:Py2.7 PyQt 4.11 二、导入模块介绍 sys: 用于访问与 Python 解释器强相关的变…...

mac 电脑上安装adb命令

在Mac下配置android adb命令环境,配置方式如下: 1、下载并安装IDE (android studio) Android Studio官网下载链接 详细的安装连接请参考 Mac 安装Android studio 2、配置环境 在安装完成之后,将android的adb工具所在…...

Webrtc (1) - Windows 编译

最近项目上遇到webrtc wgc 的几个test case无法通过,与webrtc人员沟通后决定要自行修复一下(因为他们不想管…) 参考文档 https://webrtc.org/support/contributinghttps://chromium.googlesource.com/chromium/src//main/docs/#checking-out-and-building 以上两…...

学习数据结构(1)算法复杂度

1.数据结构和算法 (1)数据结构是计算机存储、组织数据的方式,指相互之间存在⼀种或多种特定关系的数据元素的集合 (2)算法就是定义良好的计算过程,取一个或一组的值为输入,并产生出一个或一组…...

GCC之编译(8)AR打包命令

GCC之(8)AR二进制打包命令 Author: Once Day Date: 2025年1月23日 一位热衷于Linux学习和开发的菜鸟,试图谱写一场冒险之旅,也许终点只是一场白日梦… 漫漫长路,有人对你微笑过嘛… 全系列文章请查看专栏: Linux实践记录_Once-Day的博客-C…...

RocketMQ原理—4.消息读写的性能优化

大纲 1.Producer基于队列的消息分发机制 2.Producer基于Hash的有序消息分发 3.Broker如何实现高并发消息数据写入 4.RocketMQ读写队列的运作原理分析 5.Consumer拉取消息的流程原理分析 6.ConsumeQueue的随机位置读取需求分析 7.ConsumeQueue的物理存储结构设计 8.Cons…...

(Halcon)轮廓等分切割(项目分析)

目标:获取绿色圆所在位置(可用于点焊/点胶引导) 实现思路 一,相机标定板标定(如果实战用于点焊/点胶引导需要做图像畸变校正以减小误差) 相机标定 如何做一个C#仿Halcon Calibration插件-CSDN博客 二&…...

NIO 和 Netty 在 Spring Boot 中的集成与使用

Netty到底是个啥,有啥子作用 1. Netty 的本质:对 NIO 的封装 NIO 的原生问题: Java 的 NIO 提供了非阻塞 I/O 和多路复用机制,但其使用较为复杂(如 Selector、Channel、Buffer 的配置和管理)。开发者需要自…...

【更正版】梯级水光互补系统最大化可消纳电量期望短期优化调度模型

目录 1 主要内容 目标函数: 约束条件: 线性化处理: 流程示意: 2 部分代码 3 程序结果 4 下载链接 1 主要内容 该程序参考文献《梯级水光互补系统最大化可消纳电量期望短期优化调度模型》,构建了以最大化整体可…...

基于AnolisOS 8.6安装GmSSL 3.1.1及easy_gmssl库测试国密算法

测试环境 Virtual Box,AnolisOS-8.6-x86_64-minimal.iso,4 vCPU, 8G RAM, 60 vDisk。最小化安装。需联网。 系统环境 关闭防火墙 systemctl stop firewalld systemctl disable firewalld systemctl status firewalld selinux关闭 cat /etc/selinux/co…...

vue3 实际应用 将一个日期使用 moment.js 实现星期 今天 明天 ...

数据源 ["2025-01-23","2025-01-24","2025-01-25","2025-01-28","2025-01-26","2025-01-27" ] 后端给返回了一个这样的数据 日期数据 实际应用中实现的是这样的显示效果 日期需要这样显示的tabs 栏 我们需要…...