Select插件的用法

文章目录

  • 1.知识回顾
  • 2.使用方法
    • 2.1 builder属性
    • 2.2 selector属性
    • 2.3 shouldRebuild属性
    • 2.4 child属性
  • 3 示例代码

我们在上一章回中介绍了组件之间共享数据相关的内容,本章回中将继续介绍该内容.闲话休提,让我们一起Talk Flutter吧。

在这里插入图片描述

1.知识回顾

我们在前面章回中介绍了全局共享数据相关的内容,当时介绍了获取共享数据的三种方法,本章回将介绍其中的一种方法:使用Selector获取共享数据。

2.使用方法

Selector是一个Widget,它提供了builder,selector,shouldRebuild和child四个属性,一方面它可以转换数据类型,另一方面它可以获取共享数据。我们可以
通过selector属性获取到共享数据类型的对象,然后就可以使用共享类型提供的getter方法获取对象中的共享数据,把共享数据转换后再返回给builder属性。我们重
点介绍Selector的builder属性,selector属性和shouldRebuild属性,前两个属性都是必选属性,也就是说我们必须给这些属性赋值。

2.1 builder属性

该属性是方法类型,方法中包含三个参数,方法返回Widget对象,该方法和Consumer中buidler属性对应的方法相似,不同的地方只方法中第二个参数的类型,该方法
中三个参数的详细功能如下:

  • context:主要用来创建Widget,为创建Widget提供上下文环境;
  • value:是泛型类型,它用来表示转换数据类型后的对象;
  • child:表示Selector组件的子组件,因此它代表的对象和Selector组件的child属性代表的对象相同;

2.2 selector属性

该属性是方法类型,方法中包含两个参数,方法返回转换后的数据类型,下面是该方法的函数原型和相关参数的详细介绍:S Function(BuildContext, A) selector,

  • BuildContext:主要用来创建Widget,为创建Widget提供上下文环境;
  • A:它是泛型类型,它用来表示共享数据对象,通过该对象的getter方法可以获取到共享数据,然后就可以转换数据类型;
  • S:它是泛型类型,它用来表示转换数据类型后的对象,它和builder属性中的第二个参数类型相同;

2.3 shouldRebuild属性

该属性是方法类型,方法中包含两个参数,方法返回true或者false.返回值表示是否更新组件以及组件中的共享数据。该属性是可选属性,默认返回false.下面是该方
法的函数原型和相关参数的详细介绍:bool Function(T previous, T next)

  • previous:它是泛型类型,它用来表示转换前数据类型的对象;
  • next:它是泛型类型,它用来表示转换后数据类型后的对象;
    注意:这两个属性的类型相同,表示把共享数据类型转换后的数据类型,也就是selecttor属性中的S。

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

今年1-8月,Temu的客户量下降了25%,Shein和TikTok Shop不降反增

根据Earnest信用卡数据,2024年1月至8月,在Temu平台上交易的购物者减少了约25%,表明该平台的增长放缓。 自上线两年以来,Temu通过打折和广告策略,尤其是在超级碗期间投放大量广告,迅速扩展并广泛影响了爱好…

分享5款AI毕业论文生成系统使用教程!开题报告一键生成!

在当前的学术研究和写作领域,AI论文生成工具的应用越来越广泛。这些工具不仅能够提高写作效率,还能帮助研究人员快速生成高质量的论文内容。今天,我将分享五款AI毕业论文生成系统,并重点推荐千笔-AIPassPaper,帮助你高…

自动驾驶系列—DOW(开门预警):让每一次开门都更安心

🌟🌟 欢迎来到我的技术小筑,一个专为技术探索者打造的交流空间。在这里,我们不仅分享代码的智慧,还探讨技术的深度与广度。无论您是资深开发者还是技术新手,这里都有一片属于您的天空。让我们在知识的海洋中…

嵌入式项目:STM32平衡车详解 (基础知识篇) (基于STM32F103C8T6)

前言: 本文是基于B站草履虫编写的平衡车相关内容,包括模块和基础知识,结合代码进行讲解,将知识进行汇总 (由于本篇内容较长,请结合目录使用) 注:基于开源精神,本文仅供学习参考 目…

滑动窗口 -- 限制窗口内某元素的数量/种类

目录 长度最小的数组 题解: 将x减到0的最小操作数 题解: 最大连续1的个数 题解: 无重复字符的最长子串(限制数量) 题解: 水果成篮(限制种类) 题解: 找到字符串中…

Studying-图论包含的算法总结

目录 1.DFS(深度优先搜索) 代码框架: 2. BFS(广度优先搜索) 代码框架: 3. 并查集 4.最小生成树之Prim 5.最小生成树之Kruskal 6.拓扑排序 7. 最短路径之-dijkstra(朴素版&#xff…

淘宝霸屏必备工具:淘宝商品评论电商API接口

淘宝商品评论电商API接口是指用于获取淘宝商品评论信息的一种接口,通过该接口可以获取淘宝网上商品的评价内容、评价等级、评价数量等信息。通过了解并使用该接口,能够帮助电商了解消费者对商品的评价情况,做好商品的推广和销售工作。 接口使…

Leetcode - 周赛416

目录 一,3295. 举报垃圾信息 二,3296. 移山所需的最少秒数 三,3297. 统计重新排列后包含另一个字符串的子字符串数目 I 四,3298. 统计重新排列后包含另一个字符串的子字符串数目 II 一,3295. 举报垃圾信息 本题就是…

消息号 FS215 对科目 2221010200 7333允许销项税, J1 不允许

业务场景: 在做发票校验时,报错“消息号 FS215 对科目 2221010200 7333允许销项税, J1 不允许”而且计算税额失效,红灯报错。 初步怀疑是税码配置问题 FTXP J1是进项税,但是这里维护了销项税和均一税,在这里删除是需…

SQLSERVER通过触发器限制客户端IP地址

方法一:SQL Server 2005 SP2或更高版本(触发器) 当SQL Server 2005升级到SP2或者更高的版本的时候,还可以通过新增的触发器来实现控制。 执行下面的T-SQL后,将使除IP地址为192.168.1.1之外的客户端连接失败。 USE master; GO CREATE TRIGGE…

CMA软件检测机构人员职责分类、要求、档案资料

一、CMA软件检测机构人员职责分类: 1、最高管理者 2、授权签字人 3、技术负责人 4、质量负责人 5、软件测试人员 (从事软件测试项目管理、测试需求分析、测试策划和测试设计活动的人员、软件测试执行人员) 6、报告编制员 7、报告审核…

革新体验:细数3D在线预览在多个行业的广泛应用

‌3D在线预览展示技术的应用领域非常广泛,涵盖了从电子商务、产品设计、建筑设计到文化遗产保护等多个方面。‌ ‌1、电子商务‌: 在电商领域,3D展示技术为商品提供了全方位的展示,包括产品的外观、功能和卖点。这种交互式的购物…

【Docker】01-Docker常见指令

1. Docker Docker会下载镜像,运行的时候,创建一个隔离的环境,称为容器。 docker run -d \ # 创建并运行一个容器,-d表示后台运行 --name mysql \ # 容器名称-p 3307:3306 \ # 端口映射,宿主机端口映射到容器端口-e TZ…

buuctf [ACTF2020 新生赛]Include

学习笔记。 开启靶机。 进入靶场: 我们跟进 tips瞅瞅: 额,纯小白,能想到的就是先F12看看,在CTRLu、以及抓包。 得,不会了,看wp呗,不会死磕没脑子0,0? 参考:…

如何在 VitePress 站点中集成 Gitalk 评论插件及其关键注意事项

你好,我是陈明勇,一名热爱技术、乐于分享的开发者,同时也是开源爱好者。 成功的路上并不拥挤,有没有兴趣结个伴? 个人网站:https://chenmingyong.cn 文章持续更新,如果本文能让您有所收获&#…

OJ在线评测系统 后端 用策略模式优化判题机架构

判题机架构优化(策略模式) 思考 我们的判题策略可能会有很多种 比如 我们的代码沙箱本身执行程序需要消耗时间 这个时间可能不同的编程语言是不同的 比如沙箱执行Java要额外花费2秒 我们可以采用策略模式 针对不同的情况 定义不同独立的策略 而不是把所有情况全部放在一个i…

二分图算法模板以及简单应用

染色法判断二分图 给定一个 n 个点 m 条边的无向图,图中可能存在重边和自环。 请你判断这个图是否是二分图。 输入格式 第一行包含两个整数 n 和 m。 接下来 m 行,每行包含两个整数 u 和 v,表示点 u 和点 v 之间存在一条边。 输出格式 …

Matplotlib | 一文搞定Matplotlib从入门到实战演练!

文章目录 1 什么是Matplotlib1.1 Matplotlib的安装1.2 Matplotlib的基本使用 2 绘制直线3 绘制折线设置标签文字和线条粗细设置中文标题风格的设置 4 绘制曲线绘制曲线yx^2绘制正弦曲线和余弦曲线画布分区 5 绘制散点图绘制不同种类不同颜色的线 6 绘制条形图(柱状&…

1. Linux系统(CentOS7.9)安装

toc 一、Linux概述介绍 1、Linux系统介绍 Linux, 一类操作系统的统称 部署在服务器上,部署项目、应用 服务器: 硬件设备, 柜式服务器,(华为、浪潮、联想) 提供服务的机器 2、Linux的优势 开源, open source , 开放源代码稳定性最大化发挥硬件资源 …

【电子通识】案例:连接器接线顺序评估为什么新人总是评估不到位?

在一个IC卡切换的工装板(一切多)中,设计需求是一张PCB(充当活动卡片)插入读卡器,将卡片中的所有信号引出通过连接器连接到后级设备。 比如下图所示是一种IC卡压力测试设备,使用钢片卡片将压力信号通过连接器引入测试设备。 最后根据ISO/IEC 7816-2标准中我们看到…