第四百五十六回

文章目录

  • 1. 概念介绍
  • 2. 思路与方法
    • 2.1 实现思路
    • 2.2 使用方法
  • 3. 内容总结

我们在上一章回中介绍了"overlay_tooltip用法"相关的内容,本章回中将介绍onBoarding包.闲话休提,让我们一起Talk Flutter吧。

在这里插入图片描述

1. 概念介绍

我们在本章回中介绍的onBoarding包是一个三方包,该包主要用来实现首次使用App时的功能引导。这个功能引导就是在某个功能上显示功能的介绍(包中叫
OnboardingStep),同时把功能区域高亮显示,其它区域(包中叫 Overlay模糊显示,然后点击下一步时继续以相同的方式介绍其它功能区域。我估计大家都用过该
功能,通常在首次安装和使用App时会出现。本章回中将介绍如何使用onBoarding包实现此功能。

2. 思路与方法

2.1 实现思路

包中提供了OnboardingStep和OnBoadring两个组件,前者用来解释页面中某个功能的用法,后者用来管理页面中的OnboardingStep。整体的实现思路就是在页面
中某个功能所在的位置插入一个OnboardingStep,用来解释该功能的使用方法。因为我们会解释页面中多个功能的使用方法,所以在整个页面上使用包中的组
件(Onboarding)来管理所有的OnboardingStep。

2.2 使用方法

在上一小节中我们提到了包中的OnboardingStep和Onboarding这两个组件,它们提供了相关的属性来控制自己,接下来我们介绍一下它们常用的属性:

  • focusNode属性:主要用来提供OnboardingStep的索引;
  • titleText属性:主要用来显示解释内容的标题;
  • bodyText属性:主要用来显示解释内容的主体文本;
  • hasLabelBox: 是否在解释内容外侧的显示一个窗口;
  • hasArrow属性:是否在解释内容外侧的窗口上显示箭头;
  • arrowPosition属性:用来控制窗口外侧箭头在方向;
  • fullscreen属性:用来控制是否全屏显示模糊层;
  • overlayColor属性:主要用来控制模糊层的颜色;
  • stepBuilder属性:主要用来替代默认的提示窗口(LabelBox);
    上面介绍的是OnboardingStep组件中的常用属性,还有一些控制解释文本外层窗口(LabelBox)形状和风格的属性以及模糊层形状的属性没有介绍,这些属性的用法
    类似Container组件中控制形状和风格的属性。我们就不详细介绍了,接下来我们介绍Onboarding组件中的常用属性:
  • steps属性:用来存放所有的OnboardingStep组件,类似常用children属性;
  • onChanged属性:用来响应模糊层上的点击事件;
  • child属性:用来存放页面,通常把某个页面的scaffold组件赋值给它;
    Onboarding组件还有一个特点:点击模糊层时自动从当前的OnboardingStep切换到到下一个OnboardingStep;此外,我们可以通过Onboarding组件的GlobalKey
    来显示和隐藏OnboardingStep,下面是相关的代码:
 onboardingKey.currentState?.show();
 onboardingKey.currentState?.hide();

OnboardingStep组件在Scaffold的组件控制的页面中不能单独使用,而是借助FocusNode来显示,通常可以使用页面中其它组件的FocusNode属性,如果组件没有
该属性,那么需要使用Focus组件来包含OnboardingStep组件。

3. 内容总结

最后,我们对本章回的内容做一个全面的总结:

  • Onboarding包主要用来实现首次使用App时的功能引导;
  • 包中提供的OnboardingStep组件用来对某个功能做解析;
  • 包中提供的Onboarding组件用来管理所有的OnboardingStep组件;
  • 包中的OnboardingStep组件不能单独在页面中使用,需要借助于FocusNode来显示;
  • 包中的Onboarding组件可以自动从当前OnboardingStep切换到下一个OnboardingStep;
    看官们,与"onBoarding包简介"相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python 以点生成均匀二维圆点数据

已知一个数,但这个数不是最对的,最对的可能在它附近,想要从附近随机生成一群数,放入模型中暴力查找最对的那个值。 以下是代码片段 n 800 # 个数 m 2 # 角度,只有2才是均匀的,1为半圆,以此类…

HashMap的常见问题

Entry中的hash属性为什么不直接使用key的hashCode()返回值呢? 不管是JDK1.7还是JDK1.8中,都不是直接用key的hashCode值直接与table.length-1计算求下标的,而是先对key的hashCode值进行了一个运算,JDK1.7和JDK1.8关于hash()的实现…

1. Django建站基础

1. Django建站基础 学习开发网站必须了解网站的组成部分, 网站类型, 运行原理和开发流程. 使用Django开发网站必须掌握Django的基本操作, 比如创建项目, 使用Django的操作指令以及开发过程中的调试方法.1.1 网站的定义及组成 网站(Website)是指在因特网上根据一定的规则, 使用…

C++高级特性:柯里化过程与std::bind(六)

1、柯里化过程 1.1、operator()的引入 现在需要完成这样一个需求:有一个函数每次调用返回的结果不一样。例如:两次调用的返回值都不一样那么就可以达到这种目的 1.1.1、简单点的写法 可以给一个全局的变量(静态变量)&#xff…

竞赛课第六周(树状数组的应用)

实验内容: HDU 1166 敌兵布阵【线段树】 线段树的应用 敌兵布阵 C国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了。A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况。由于采取…

批量发送朋友圈还能自动同步朋友圈

现在不管是做服装店、水果店、化妆店、影楼、二手车房等各行各业来说,每天必不可少的就是发各种朋友圈,量大号又多还占手机内存,真!的!很!累! 没有人能拒绝一键转发带来的方便,有了它发朋友圈只需要点一下就复制到了你自己的朋友圈…

tkinter窗口

简单的窗口程序 导入所需的库 from tkinter import * import json 创建一个主窗口 app Tk() 设置窗口大小为 1048x2048 app.geometry(“1048x2048”) 设置窗口背景为灰色 app.configure(bg“gray”) 创建一个 Label 对象,显示 “账号:” 和红色…

finalshell连接VM虚拟机报错,java,net.ConnectException: Connection timed out: connect

适用于,所有第三方连接虚拟机报错。 java,net.ConnectException: Connection timed out: connect Xshell啊什么的。 解决方法: 首先,我想确认一下是否已经安装了finalshell软件并且要连接的CentOS 7服务器已经设置好了。连接不上的问题有很…

二叉树-认识树及堆,堆的实现

一、树的概念及结构 (一)树的概念 树是一种非线性的数据结构,是n(n≥0)个结点的有限集。当n0时,称为空树。在任意一颗非空树中应满足: 有且仅有一个特殊的结点,称为根结点,根节点没有前驱结点…

STM32F407+DHT11采集数据

1、DHT11简介 DHT11 与单片机之间能采用简单的单总线进行通信,仅仅需要一个 I/O 口。传感器内部湿度和温度数据 40Bit 的数据一次性传给单片机,数据采用校验和方式进行校验,有效的保证数据传输的准确性。DHT11 功耗很低,5V 电源电…

Java-Doc

Java-Doc javdoc命令是用来生成自己的API文档的 参数信息:author作者名version版本号since知名需要最早使用的jdk版本param参数名return返回值情况throws异常抛出情况 1.参数信息的使用: 未完待续... ...

mysql面试题 1

为什么要使用数据库 数据保存在内存 优点: 存取速度快缺点: 数据不能永久保存 数据保存在文件 优点: 数据永久保存缺点:1、速度比内存操作慢,频繁的IO操作。2、查询数据不方便 数据保存在数据库 数据永久保存使用SQL语…

阿里云服务器公网带宽费用全解析(不同计费模式)

阿里云服务器公网带宽怎么收费?北京地域服务器按固定带宽计费一个月23元/M,按使用流量计费0.8元/GB,云服务器地域不同实际带宽价格也不同,阿里云服务器网aliyunfuwuqi.com分享不同带宽计费模式下带宽收费价格表: 公网…

基于SSM+Vue实现的宠物销售系统

基于SSMVue实现的宠物销售系统 系统介绍 系统演示 点击查看视频演示 基于SSMVue实现的宠物销售系统,主要实现的功能有以下几点:管理员;首页、个人中心、宠物分类管理、商品分类管理、宠物用品管理、宠物商店管理、宠物领养管理、用户管理…

【刷题】图论——最小生成树:局域网

要想去除边,并且不改变连通性,而且去除的值最大,相当于保留最小生成树。 注意这题连通块有若干个,所以运行Kruskal相当于形成若干个最小生成树。 如果是prim只能事先处理好各个连通块,然后在连通块内部单独用prim 题目…

vueRouter动态路由(实现菜单权限控制)

一、权限控制管理: 对于企业级的项目, 我们可能需要对项目做权限控制管理, 实现不同角色的用户登录项目根据所拥有的权限访问不同的页面内容,此时就需要使用到动态路由来对权限页面做限制。 【使用vue-router实现动态路由,达到实现菜单权限…

阿里云2核2G服务器这么便宜,能用来做什么?

阿里云2核2G服务器这么便宜,能用来做什么?阿里云2核2G云服务器可以用来搭建网站、爬虫、邮件服务器、接口服务器、个人博客、企业官网、数据库应用、大数据计算、AI人工智能、论坛、电子商务、AI、LLM大语言模型、测试环境等,阿里云2核2G服务…

四、SpringBoot3 整合 Druid 数据源

本章概要 创建程序引入依赖启动类配置文件编写编写 Controller启动测试问题解决 4.1 创建程序 4.2 引入依赖 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://ww…

解锁电气数据新价值:SolidWorks Electrical助力企业转型

在信息化、数字化的时代&#xff0c;电气数据库已成为企业不可或缺的核心资产。它以其独特的功能和优势&#xff0c;助力企业在激烈的市场竞争中脱颖而出&#xff0c;实现数字化转型的跨越式发展。 SolidWorks Electrical电气数据库具备强大的数据整合能力。它能够将企业内部各…

阿里云服务器带宽价格全解析,附报价单

阿里云服务器公网带宽怎么收费&#xff1f;北京地域服务器按固定带宽计费一个月23元/M&#xff0c;按使用流量计费0.8元/GB&#xff0c;云服务器地域不同实际带宽价格也不同&#xff0c;阿里云服务器网aliyunfuwuqi.com分享不同带宽计费模式下带宽收费价格表&#xff1a; 公网…