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

【Flutter 实战】1.20版本更新及新增组件

老孟导读:Flutter 1.20 更新了 Slider、RangeSlider、日期选择器组件、时间选择器组件的样式,新增了交换组件:InteractiveViewer,下面详细介绍其用法。...新的滑块在设计时考虑到了更好的可访问性:轨道更高,滑块带有阴影,并且值指示器具有新的形状和改进的文本缩放支持。...InteractiveViewer InteractiveViewer 是 Flutter 1.20 新增的组件,用户可以通过拖动以平移、缩放和拖放子组件。...maxScale 、minScale、scaleEnabled 是缩放相关参数,分别表示最大缩放倍数、最小缩放倍数、是否可以缩放: InteractiveViewer( maxScale: 2,...回调事件: onInteractionStart:当用户开始平移或缩放手势时调用。 onInteractionUpdate:当用户更新组件上的平移或缩放手势时调用。

5.1K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Flutter实现电影院选座效果!

    导语 接到了一个仿电影院的需求,上周几乎是找遍了百度,谷歌,stackoverflow。均没有找到用flutter实现的效果,那只能自己写一个了。本文只讲思路,具体实现还需各位看官自己动手。...Column(不能用ListView,同样会造成滑动冲突) 交互分析&实现 放大缩小拖动效果: 对于放大缩小拖动的效果,Flutter现在有自带的组件InteractiveViewer 通过这个组件可完美实现放大缩小效果...方法三: 使用InteractiveViewer是逃不过的,不然自己实现放大缩小效果太头疼, 如果能像上面的linked_scroll_controller一样,将InteractiveViewer的缩放效果复制到另外一个...我们就能实现同步缩放拖动的效果!...缩放 用transformationController将InteractiveViewer缩放到defaultS // 座位表 mainTransformationController.value =

    1.6K30

    Flutter实现电影院选座效果!

    导语 接到了一个仿电影院的需求,上周几乎是找遍了百度,谷歌,stackoverflow。均没有找到用flutter实现的效果,那只能自己写一个了。本文只讲思路,具体实现还需各位看官自己动手。...Column(不能用ListView,同样会造成滑动冲突) 交互分析&实现 放大缩小拖动效果: 对于放大缩小拖动的效果,Flutter现在有自带的组件InteractiveViewer 通过这个组件可完美实现放大缩小效果...方法三: 使用InteractiveViewer是逃不过的,不然自己实现放大缩小效果太头疼, 如果能像上面的linked_scroll_controller一样,将InteractiveViewer的缩放效果复制到另外一个...我们就能实现同步缩放拖动的效果!...缩放 用transformationController将InteractiveViewer缩放到defaultS // 座位表 mainTransformationController.value =

    1.6K10

    10 个派上用场的 Flutter 小部件

    10 个派上用场的 Flutter 小部件 尝试学习一门新语言可能会令人恐惧和厌烦。很多时候,我们希望我们知道早先存在的某些功能。...Spacer(flex: 2), Text('End'), ], ), TextButton.icon 在创建带有图标的按钮时,此小部件取代了使用行的需要...Transform 这个小部件将您的动画游戏提升到一个全新的水平。它可以实现简单的动画,如旋转和缩放到更复杂的动画,如 3D 和倾斜动画。...它提供了有用命名的构造函数,例如旋转、缩放和平移,以便快速实现。 InteractiveViewer 在小部件上引入缩放、平移、拖动和捏合功能的最简单方法。它可以根据您的需要高度定制。...,让我们为更好的使用Flutter加油吧。

    1.3K20

    【译】Flutter 1.20 发布

    为了使开发者能够构建更加精美的 Flutter 应用程序,1.20 版本提供了多项 UI 增强功能,包括期待已久的: autofill 支持; 对 Widget 进行分层以支持平移和缩放的新方式; 新的鼠标光标支持...一个用于常见交互模式的新控件 此版本引入了一个新的小部件 InteractiveViewer。...该 InteractiveViewer 设计用于建设普通类型的交互性到应用程序,如: 平移,缩放和拖动“N”下降甚至大小调整,其中类似这种简单的棋盘。 ?...另外,如果你想了解的 InteractiveViewer 设计和开发方法,则可以在YouTube 上看到 Chicago Flutter on YouTube.的演讲。...如果你有兴趣向 InteractiveViewer 启用的 Flutter 应用程序中添加新的交互,那么你可能也会很高兴听到我们在此版本中添加了更多功能来拖动“n”。

    4K10

    您不会错过的2020年7个最重要的Flutter更新

    老孟导读:回顾一下Flutter 2020年的重大事件。 作者:LeanCode的Flutter开发人员RobertOdrowąż- Sypniewski。...新的导航器实际上是对现有命令式导航引入附加声明式API的扩展。新API有两个主要优点。第一个是对导航堆栈的更多控制。 使用旧的命令式API很难或难以执行某些导航操作。...今年推出的新小部件是: NavigationRail InteractiveViewer 而更新的小部件包括: DatePicker TimerPicker Slider RangeSlider 其他已更新的小部件是...在Flutter 1.22中,扩展了Flutter中可用的标准“Material”按钮集,并修改了它们的主题。...该框架已更新,以使其与iOS 14的新策略和功能兼容*。cupertino_icons*程序包已扩展为带有新图标,并且现有图标已更新为与最新的iOS 14样式匹配。

    1.5K10

    原创flutter3.x+window_manager桌面端os管理系统

    通过这个项目探索Flutter3在桌面端开发的可行性。 flutter-macos是一款基于最新跨端技术Flutter3.19原创自研的仿制macOS桌面界面os管理系统项目。...systemTray.popUpContextMenu() : await windowManager.show(); } }); } flutter窗口管理window_manager 目前比较流行的两款窗口管理器是...有下面几个组件是文档没有写的: DragToMoveArea 拖拽窗口 DragToResizeArea 缩放窗口 VirtualWindowFrame(仅Linux) WindowCaption 自定义顶部导航栏...实现Dock动效菜单 底部Dock菜单支持鼠标滑过,带有动画效果的放大图标。...false, // 鼠标滑出弹窗是否销毁关闭 ), )); } Okey,以上就是flutter3+window_manager开发桌面端os系统的一些分享,希望能喜欢!

    56531

    我不认为Flutter比React Native好

    所以在 React Native 和 Flutter 二选一的交锋中,我们很难忽略上面这些基本事实。 2 那,其他因素呢? 是的,性能、开发者体验、可访问性、第三方库生态也都很重要。...性能 软件框架的性能差异其实很难比较,更不用说像 Flutter 和 React Native 这样高度复杂的框架方案了。...人们对 Flutter 一直有怨言,批评它总在重新发明已经由平台自身解决了的各种问题,包括辅助功能、字体缩放等等。...内置导航(及更多) Flutter 在设计上比 React Native 更贴心,最典型的体现就是它带有自己的导航 / 路由解决方案。...虽然 Flutter 2 也在朝着这个方向迈进,但 React Native 在 Web 领域已经拥有巨大的先发优势。想要缩小差距,很难的啦。

    2.5K20

    如何响应用户交互事件

    今天我们来聊聊Flutter是如何监听和响应用户的手势操作的。...通常情况下,响应用户交互行为的话,我们会使用封装了手势语义操作的Gesture,如点击 onTap、双击 onDoubleTap、长按 onLongPress、拖拽 onPanUpdate、缩放 onScaleUpdate...手势识别器会根据用户交互的位置、加速度、方向等因子综合判断当前需要以哪个手势去响应,这是确定的;不确定的是如果你的交互具有二义性,而你需要识别的多个手势之间又非常相似(比如旋转和缩放),则最后到底哪个手势去响应需要综合...在处理多个手势识别场景时,很容易出现手势冲突的问题。比如,当需要对图片进行点击、长按、旋转、缩放、拖动等操作的时候,如何识别用户当前是点击还是长按,是旋转还是缩放。...不过需要注意的是,冲突的只是手势的语义化识别过程,原始指针事件是不会冲突的。所以在遇到复杂的冲突场景通过手势很难搞定时,我们也可以通过Listener 直接识别原始指针事件,从而解决手势识别的冲突。

    2.2K10

    【Flutter】Image 组件 ( Image 组件简介 | Image 构造函数 | Image.network 构造函数 | Image.asset 构造函数 )

    中用于展示图片的控件是 Image , 类似于 Android 中的 ImageView , iOS 中的 UIImageView ; Flutter 中 Image 组件支持的图片格式 : jpeg..., 这会使界面布局非常难看 ; 图片缓存 : 所有的网络图片都会被缓存 ; header 参数说明 : 可选的 header 参数 , 可以用于发送 带有图片请求的自定义 HTTP 头 ; 四、Image.file...; 内存缓存大小 : cacheWidth 或 cacheheheight 参数主要用于减少图片在内存中的大小 ; 假设 pubspec.yaml 中有如下配置 : flutter: assets:.../cat.png 图片 ; 资源图像的加载策略是就近加载 ; Image 组件使用可以参考之前的 【Flutter】StatefulWidget 组件 ( Image 组件 | TextField 组件...参数 ; ② 指定 Image 组件放置在严格约束的布局中 ; 如果以上都没有设置 , 那么 Image 组件就是已加载的图片的真实大小 , 这会使界面布局非常难看 ; 缩放图片 : 缩放图片时使用

    2K30

    移植一个抖音贴纸组件到Flutter

    而不会出现抛弃 Native 只做 Flutter 的工程师,因为 Flutter 说一千道一万只是一个 ui 框架。毕竟它自身的复杂度很难支撑起比它还复杂的业务。...每个事件都会调用 WE 的对应方法以更新其内部数据。 2.双指旋转缩放的整个流程:当我们选中了一个 WE 的时候可以用双指对它进行缩放和旋转。这里可以分为开始、进行中、结束。...这样一来子类也可以对手势进行扩展,例如按住某个地方单指缩放等等。...7.我图中 ECWS 也实现了一个子类 DECWS,这个类简单的加两个手势: 1.单指移动缩放:类似抖音的随拍,按住元素的右下角的时候可以用拖动来对元素进行缩放和旋转。...5.我们定义 view 没有缩放的时候 mScale 为 1,mScale 为 2 的时候表示 view 放大 2 倍,以此类推。

    1.4K20

    Flutter 入门指北之路由

    上一节撸了个界面,虽然比较简单,但是把前面讲的知识串联了下,但是界面之间的跳转一直没说,这节就讲下 Flutter 中的「路由」来管理界面。...Navigator Flutter 通过 Navigator 来进行页面之间的跳转,分为 push 系列和 pop 系列操作,带 push 方法为入栈操作,带 pop 方法为出栈操作。...因为需要展示所有的跳转至少需要 3 个页面,所以我们创建最简单的三个界面,通过文字来区别不同的页面,因为需要调用带有 Name 的方法,所以需要先在 MaterialApp 对路由进行注册。...(milliseconds: 500), // 切换动画的切换效果,系统自带的常用 Transition // ScaleTransition: 缩放 SlideTransition...// 这个值必须记得要传,否则会不显示界面 child: child, ))); 当再次点击跳转的时候,切换的动画就有开始自带的平滑效果变成缩放效果了

    81720

    第138期:flutter中的json和序列化

    很难想象一款移动应用程序不需要与web服务器通信,也不需要存储结构化数据。在开发一款网络连接的应用程序时,它迟早会需要使用一些JSON。 这里简单介绍一下JSON在flutter中的使用。...通过treeShaking树抖动,您可以从发布版本中“抖掉”未使用的代码,这可以优化应用程序的大小。 由于反射默认情况下会隐式使用所有代码,因此很难进行treeShaking树抖动。...这些工具无法知道哪些部分在运行时未使用,因此冗余代码很难去除。使用反射时,无法轻松优化应用程序大小。 虽然我们不能在Flutter中使用运行时反射,但有些库提供了类似的API,是基于代码生成。...使用dart:convert内置库手动进行序列化 Flutter中的基本JSON序列化非常简单。Flutter有一个内置的dart:convert库,其中包含一个简单的JSON编码器和解码器。...如果需要的话,我们还可以定制命名策略,比如,如果API返回带有的对象带有snake_case属性,并且我们希望在模型中使用lowerCamelCase,则可以使用带有name参数的@JsonKey注释:

    1.5K30

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

    参阅书籍: 《Flutter跨平台开发入门与实践》-- 向治洪(著) 4. Flutter组件基础 4.1 Widget组件基础 Flutter开发中有一个非常重要的理念,即一切皆为组件。...4.3.2 按钮组件 Materail组件库中常见的按钮组件: RaisedButton:默认是带有阴影和灰色背景的按钮,按下后阴影会变大; FlatButton:默认是背景透明并不带阴影的按钮,按下后会有背景色...; OutlineButton:默认是一个带有边框、不带阴影且背景透明的按钮,按下后边框颜色会变亮,同时会出现背景和阴影效果; IconButton:一个可点击的图标按钮,不支持文字,默认没有背景,点击后会出现背景...; BoxFit.cover:默认填充规则,在保证长宽比不变的情况下缩放以适应当前显示空间,图片不会变形; BoxFit.fitWidth:从宽度上充满空间,高度会按比例缩放,图片不会变形,超出显示空间部分会被剪裁...; BoxFit.fitHeight:从高度上充满空间,宽度会按比例缩放,图片不会变形,超出显示空间部分会被剪裁; BoxFit.scaleDown:与BoxFit.contain的效果差不多,但此属性会缩小图像以确保图像位于显示空间内

    12.5K30

    Flutter vs React Native vs Native:深度性能比较

    我们还使用Android上的RecyclerView.SmoothScroller来自动化滚动速度。在iOS和React Native上,我们使用了带有计时器的方法,并以编程方式滚动到位置。...当iOS Native积极使用GPU时,Flutter积极使用CPU。Flutter中的协调会增加CPU的负载。...Flutter的结局令人惊讶,在演出中有点糟。(12%的CPU和9 FPS)。 我们发现从网格中删除一个特定的动画会使Flutter上的FPS最高提高40%。...请注意:在这种情况下,我们为Flutter使用了一个不同的库,该库比我们在其他平台上使用的库重得多,这可能是fps下降的原因。 用例3-更重的动画会测试旋转,缩放和淡入淡出。...再一次,我们的移动团队和Flutter团队很高兴收到并承担您所有反馈和建议的重担。

    3.5K20

    Flutter 空安全的糖果罐

    作为一个进步的 Flutter 组织 , 组织的小伙伴也在第一时间支持了空安全。...用户使用更大的屏幕是为了接收更多的信息, 而不是看到更大的字 基于这个观点, 我个人建议使用文字流式, 图片宽高比, 控件弹性的方案来做 但是很多初学者对于这个原则很难把握, 而等比例放大比较容易理解,...,主要包括以下功能: 裁剪 翻转 旋转 缩放 色彩矩阵变化 添加文字 混合图片 添加任意图形 editor.gif Dialog SmartDialog,一种更优雅的Dialog 解决方案,主要解决了系统自带的...支持设置曝光参数 ️ 支持捏合缩放 支持录像 ⏱ 支持限制录像时间 支持录像时缩放 支持自定义前景 widget 构建 image | image ---|--- image | image...https://juejin.cn 应该算是国内 Flutter 文章最多的一个网站了,对于英文不好的小伙伴,有中文的各种各样的 Flutter 相关文章也是极好的。

    1.6K10
    领券