首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

《Flutter》-- 4.Flutter组件基础

AppBar的基本属性如下: 1)leading:标题左边的图标按钮,默认是一个返回箭头样式的按钮。 2)title:导航栏标题。...4.3.2 按钮组件 Materail组件库中常见的按钮组件: RaisedButton:默认是带有阴影和灰色背景的按钮后阴影会变大; FlatButton:默认是背景透明并不带阴影的按钮后会有背景色...; OutlineButton:默认是一个带有边框、不带阴影且背景透明的按钮后边框颜色会变亮,同时会出现背景和阴影效果; IconButton:一个可点击的图标按钮,不支持文字,默认没有背景,点击后会出现背景...所有Materail组件库的按钮都有两个相同点:一是时会有水波动画,另一个是都有一个onPressed属性来设置单击回调。...onChange:输入框内容改变的回调函数。 onEditingComplete:输入框输入完成触发,不会返回输入的内容。 onSubmitted:输入框输入完成触发,会返回输入的内容。

12.4K30
您找到你想要的搜索结果了吗?
是的
没有找到

Flutter跨平台移动端开发丨WillPopScope、InheritedWidget、Theme

WillPopScope(返回事件拦截器) InheritedWidget(数据传递与共享) Theme (主题控制) ---- WillPopScope(返回事件拦截器) 可防止误触情况的发生,也可监听返回按钮点击事件...= null), super(key: key); onWillPop:返回事件回调函数,点击返回按钮时调用。...此回调方法返回 true 退出返回 false 不会退出 child:子元素 import 'package:flutter/material.dart'; /** * @des WillPopScope...@author liyongli 20190514 * */ class InheritedWidgetTest extends InheritedWidget{ int data; // 共享的数据...---- Theme (主题控制) 通过 ThemeData 可以控制 Theme 视图内的组件风格,颜色、字体、样式等,实际上也是通过 InheritedWidget 来共享与传递主题数据 const

1.3K30

Flutter 入门指北之路由

跳转后,可以发现,在 BPage 的 AppBar 上有个返回按钮,点击可以返回 APage ,那么也就是说通过 push 或者 pushNamed 方式跳转的时候,界面堆栈的变化是直接在原来的堆栈上添加一个新的...,消失了,消失了,我们可以试点击返回按键,发现 App 直接退出了,也就是说,BPage 替代了 APage 在堆栈中的位置。...,界面来到 CPage,然后发现还是没有返回按钮,没有返回按钮,没有返回按钮,点击返回按键,然后发现 App 直接退出了,退出了,退出了,那么堆栈变化如图 ?...CASE 3 通过系统返回按钮传值 在 CASE 2 情况,通过按钮返回事件进行监听,那加入我们需求没有这个按钮,只能通过系统默认的返回按钮,或者物理返回按键,那该如何传值呢,这里就需要用 WillpopScope..... // 如果返回的是 `true` 则相当于 `pop` 操作,返回 `false` 则只执行上一步的 `pop` 操作 // 例如双击返回退出,也是通过 `WillpopScope

78320

【Flutter】自定义滚动开关

当此属性无效,开关小部件会失效。 该演示视频展示了如何在颤动中创建自定义滚动开关。它显示了自定义滚动开关如何在flutter应用程序中使用lite_rolling_switch包工作。...它显示了在用户按钮后进行的切换交互,该开关将滚动到具有动画效果的另一侧,并且在滚动该开关将更改图标和文本。...*我们将添加textOn是字符串' Yes '表示当开关打开,文本将显示在按钮上;当textOff是字符串' No '意味着当开关关闭,文本将显示在按钮上。...我们将添加colorOn表示,当开关处于打开状态,颜色将显示在按钮上;当colorOff意味着当开关处于关闭状态,颜色将显示在按钮上。...当我们运行应用程序时,我们应该获得屏幕的输出,屏幕下方的截图所示。

33.3K60

『Flutter』常用组件 按钮、图片

1.前言 经过上一篇文章的学习,我们大家可以了解到布局相关的组件,但是在实际开发中,我们还需要使用到其他的组件,比如按钮、图片、文本、输入框等等,这些组件都是我们在开发中经常使用的,所以本篇文章我们就来学习一这些常用组件...它有默认的阴影和灰度效果,当时会有视觉反馈。 FlatButton(现在称为TextButton):这是一个无阴影的平面按钮,通常用于不太重要的操作。它在按不会改变外观,提供简洁的视觉效果。...OutlineButton(现在称为OutlinedButton):这个按钮有一个边框,但没有背景色。当,边框和文字颜色会变化,适用于需要强调边框而非背景色的场景。...FloatingActionButton:这是一个圆形的按钮,通常悬浮在内容上方,用于促进应用中的主要动作,添加、编辑等。...Text Button'), ), ], ) ) ) ); } 在这个示例中: 当 TextButton 点击

31531

导航栏还是侧栏?flutter 跨平台适配指南

Android 应用的导航栏通常采用 Material Design 设计风格,具有醒目的颜色和平面化的图标。 用户通常期望在导航栏中找到应用的标题和返回按钮,以及其他与当前页面相关的操作按钮。...他们习惯在导航栏中找到应用的标题和返回按钮,并通过侧栏来访问不同部分和功能。...平台设计规范:某些平台( iOS)更倾向于使用导航栏作为主要的导航方式,因此在遵循平台设计规范的情况,应优先考虑使用导航栏。 何时应该选择侧栏?...在 Flutter 中,你可以使用 AppBar 组件来实现导航栏。AppBar 通常位于 Scaffold 的 appBar 属性中,用于显示应用的标题和操作按钮。...附录 Flutter 中常用的导航栏和侧栏组件 导航栏组件: AppBar:用于在屏幕顶部显示应用的标题和操作按钮

13610

Flutter 构建完整应用手册-导航器 顶

导航到新的屏幕并返回 大多数应用程序包含几个用于显示不同类型信息的屏幕 例如,我们可能有一个显示产品的屏幕。 然后,我们的用户可以在新屏幕上点击产品以获取更多信息。...从屏幕返回数据 在某些情况,我们可能想要从新屏幕返回数据。 例如,假设我们推出一个新的屏幕,向用户呈现两个选项。 当用户点击某个选项,我们需要通知第一个屏幕用户的选择,以便它能够处理这些信息!...我们的选择按钮将会: 点击启动SelectionScreen 等待SelectionScreen返回结果 class SelectionButton extends StatelessWidget {...它将包含两个按钮。 当用户点击按钮,应该关闭选择屏幕并让主屏幕知道哪个按钮点击! 现在,我们将定义UI,并确定如何在下一步中返回数据。...跨屏幕设置动画部件 在屏幕之间导航,指导用户浏览我们的应用通常很有帮助。 通过应用引导用户的常用技术是将部件从一个屏幕动画到下一个屏幕。 这会创建一个连接两个屏幕的视觉锚点。

4.9K10

flutter 起步

flutter_console.bat图片注意点:官网下载flutter包完成将安装包zip解压到你想安装Flutter SDK的路径(:C:\src\flutter;注意,不要将flutter安装到需要一些高权限的路径...比如 Navigator.pushNamed(context, '/');当部件Widget在StatelessWidget.build函数返回,这个部件会成为父部件。...(WidgetsApp不支持)debug模式是否显示材质网格,传入bool类型18. showPerformanceOverlay当为true应用程序顶部覆盖一层GPU和UI曲线图,可即时查看当前流畅度情况...,在debug模式显示右上角的debug字样的横幅,false即为不显示Scaffold 有下面几个主要属性:appBar - 显示在界面顶部的一个 AppBar。...AppBar 有以下常用属性:leading → Widget - 在标题前面显示的一个控件,在首页通常显示应用的 logo;在其他界面通常显示为返回按钮

4.4K20

Flutter开发之路由与导航的实现

push():将给定的路由入栈,返回值是一个Future对象,用以接收路由出栈返回数据。 pop():将栈顶路由出栈,返回结果为页面关闭返回给上一个页面的数据。...当点击第一个页面上的按钮将导航到第二个页面,点击第二个页面上的按钮返回第一个页面。运行上面的代码,效果如下图所示。 ?...平台页面进入动画是向上滑动并淡出,退出是相反,iOS平台页面进入动画是从右侧滑入,退出则相反。...而对于应用中页面比较多的情况,如果再使用基本路由方式,那么每次跳转一个新的页面都要手动创建MaterialPageRoute实例,然后再调用push()方法来打开一个新的页面,此时页面的管理和跳转就比较混乱...我们通常要实现此回调,返回新路由的实例。 settings: 包含路由的配置信息,路由名称、是否初始路由(首页)。

3.2K10

学一学Flutter新的导航和路由系统

master-api.flutter.dev/flutter/widgets/BackButtonDispatcher-class.html "**BackButtonDispatcher**")— 向Router报告返回按钮下情况...最终会完成一个可以与 URL 栏保持同步的app,并处理来自应用程序和浏览器的后退按钮,如下面的 GIF 所示: 接下来,创建一个带有 web 支持的新 Flutter 项目并将其中的内容替换lib...使用setState通知框架调用该build()方法,该方法在_selectedBook为 null返回一个单页列表。...我们无法处理平台的后退按钮,浏览器的 URL 在我们导航也不会改变。 Router 到目前为止,该应用程序可以显示不同的页面,但它无法处理来自底层平台的路由,例如,、用户更新浏览器中的 URL。...在这种情况,“完成”意味着result对象传递到 上的onPopPage回调AppRouterDelegate。

4.5K40

『Flutter』导航器

2.导航器 2.1.导航器简介 Flutter 的导航器(Navigator)是用于在应用中管理页面(也称为路由)堆栈的一个关键组件。...堆栈结构 例如我们要显示 b 页面,那么就会将 a 页面压入堆栈,然后显示 b 页面,当我们点击 b 页面的返回按钮,就会将 b 页面弹出堆栈,然后显示 a 页面。...pushReplacement: 替换当前路由,新路由进入堆栈旧路由退出。...,点击按钮后会跳转到第二个页面,第二个页面包含一个按钮,点击按钮后会返回到第一个页面。...通过 Navigator.push 与 MaterialPageRoute 的方式进行页面跳转,跳转到目标页面左上角会有一个返回按钮,点击返回按钮也会返回到上一个页面,这个返回按钮是 Flutter 自动添加的

14820

不得不看的Flutter与Android混合开发

native项目中加载flutter页面,下面就来看一flutter页面的代码。...代码还使很简单的,基本的都是创建module自动生成的代码。...首先,关闭当前应用,注意:是要杀死当前应用所在进程,而不是退出应用。 2. 其次,在flutter模块中输入命令flutter attach,就会显示以下内容。 ? 3....当修改flutter代码后,r键,就会出现以下提示,代表修改成功。 ? 经过上面的一些步骤,我们就可以在混合项目中使用flutter的热重载功能,做到flutter修改后的立即生效。...在flutter项目中,我们可以直接点击debug按钮来进行调试,但在混合项目中,该按钮就不起作用了,得通过其他方式来建立连接。

5.3K41

Flutter 中自定义动画底部导航栏

我们将看到如何实现自定义动画底部导航栏的演示程序以及如何在您的 Flutter 应用程序中使用它。...介绍: 显示在应用程序底部的Material小部件,用于在几个视角中进行选择,通常在 3 到 5 范围内的某个位置。底部导航栏包含各种选项,文本标签、图标或两者。...它展示了自定义底部导航栏将如何在您的 Flutter 应用程序中工作。它显示当用户点击底部导航栏图标,它们将被动画化并显示标签文本。当用户点击任何图标,颜色也会发生变化和动画。...Listitems:该属性用于定义底部导航栏中显示的按钮的外观。这应该至少有两个项目,最多五个。 onItemSelected:该属性用于在按项目时调用的回调。...如何在 dart 文件中实现代码 创建一个新的 dart 文件*my_home_page.dart*。 在构建方法中,我们将返回一个 scaffold()。在里面我们将添加一个 appBar

8.8K30

Python中的easygui入门

使用pip命令来安装:shellCopy codepip install easygui基本用法​​easygui​​提供了一些常用的对话框,文本输入框、选择框、确认框等。...上述代码中,​​ynbox​​函数用于显示一个确认框,询问用户是否确认执行某个操作。如果用户点击确认按钮,则​​answer​​变量为​​True​​,否则为​​False​​。...用户在选择添加学生信息,可以逐个输入学生的姓名、年龄和专业,直到用户不再添加为止。在查询学生信息,用户可以选择按照姓名或者专业进行查询,并输入相应的查询条件。...希望以上示例代码能帮助读者理解如何在实际应用场景中使用​​easygui​​库实现交互式操作。在实际开发中,可以根据需要进行适当的扩展和优化。...这意味着在复杂的应用场景,你可能需要做很多的变通来实现你想要的效果。如果你需要更多灵活性和自定义性,可能需要考虑其他更强大的 GUI 库。

35320

深入探究Flutter中的页面导航器:Navigator详解

当我们跳转到一个新的页面,会将对应的路由对象压入到路由栈中,成为当前页面。而当我们从页面返回,会将当前页面对应的路由对象从路由栈中弹出,返回到上一个页面。...路由观察器的概念: 路由观察器是一个观察者模式的实现,它可以监听页面路由的生命周期事件,包括路由创建、进入、退出和销毁等阶段。通过路由观察器,我们可以在页面跳转、返回等操作进行相应的处理。 2....通过RouteObserver对象,我们可以监听页面的进入、退出等事件,并在需要进行相应的处理。...路由保持状态 在开发Flutter应用时,有时我们希望保持页面状态,避免页面重建,特别是在页面间切换。这种情况,我们可以使用路由保持状态的技术来实现。...如何在页面返回传递数据? 可以通过Navigator.pop方法的第二个参数来传递数据。在返回,可以通过await关键字获取pop方法的返回值,从而获取传递的数据。

42010

Flutter开发-路由

为了避免用户误触返回按钮而导致APP退出,在很多APP中都拦截了用户点击返回键的按钮,然后进行一些防误触判断,比如当用户在某一个时间段内点击两次,才会认为用户是要退出(而非误触)。...@required WillPopCallback onWillPop, @required Widget child }) onWillPop是一个回调函数,当用户点击返回按钮调用(包括导航返回按钮及...Android物理返回按钮)。...该回调需要返回一个Future对象,如果返回的Future最终值为false,则当前路由不出栈(不会返回);最终值为true,当前路由出栈退出。我们需要提供这个回调来决定是否退出。...示例 为了防止用户误触返回退出,我们拦截返回事件。当用户在1秒内点击两次返回按钮,则退出;如果间隔超过1秒则不退出,并重新记时。

75320

Flutter学习指南:编写第一个应用

title: 'Our first Flutter app', // 应用的“主页” home: Scaffold( appBar: AppBar( title...,我们对上面的代码是否能够按照预期执行还不是那么有信心,所以我们先打个 log 确认,点击按钮后是不是真的会执行 onPress。...再往回查看一代码,我们写的是 return [roll1, roll1]。修改后一个为 roll2,程序就能够预期的正常执行了。 最终的代码,可以看 tag first_app_done。...这是一个模板生成的文件,有些东西可能需要修改一 build.gradle,这里面也可能有你需要修改的地方。...对我们的应用来说,目前都先维持原样 如果有需要,更新 res/mipmap 里的应用启动图标,这里我们不改 签名,前面略微复杂一些,下面详细展开一

97800
领券