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

【老孟FlutterFlutter 2 新增的功能

Web 截止到今天,FlutterWeb支持已经从Beta过渡到稳定渠道。在此初始稳定版本中,FlutterWeb平台的支持下将代码的可重用性提高到另一个层次。...在鼠标输入端,现在可以立即开始使用高精度定点设备进行拖动,而不必等待处理触摸输入时所需的延迟。...这在移动设备上很有意义,但是很少有台式机用户会想到用鼠标长按某个项目来移动它,因此此版本包括适用于鼠标或触摸输入的抓握手柄。平台惯用功能的另一项改进是更新的滚动条,该滚动条可以正确显示桌面形状因素。...此版本包括一个更新的Scrollbar小部件,该小部件在桌面环境中非常有效 滚动条小部件已更新,以提供桌面上预期的交互功能,包括拖动拇指,单击轨道以上下滚动页面以及在鼠标悬停在鼠标的任何部分上时显示轨道的功能...滚动条。此外,由于Scrollbar是使用新ScrollbarTheme类的主题,因此您可以设置其样式以使其与应用程序的外观和风格相匹配。

7.8K20

【译】Flutter 1.20 发布

) 如果没有广泛的社区贡献者团队,我们将无法持续发布 Flutter,所以非常感谢大家的支持!...在此版本中,我们重构了鼠标点击测试系统,以提供由于性能问题而被阻止的许多体系结构优势,重构使我们能够在基于 Web 的微基准测试中将性能提高多达 15 倍!...使用 PR 52126,我们很高兴地说等待已经结束:不再要求用户重新输入,操作系统已为他们收集的数据。 ? 自动填充 另外你会很高兴听到我们也已经开始为 Web 添加此功能。...image 如果您想使用它,这是一个使用 Flutter构建的有趣的 Web 演示。...无法列出太多工具更新 Flutter 1.20 时间表中的工具发生了太多重大变化,因此我们无法在此处列出所有内容。

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

Flutter 3.3更新详解

本次更新带来了 Flutter Web 平台、桌面端平台、文本处理的性能和其他更新内容。...框架更新 全局选择 到现在为止,FlutterWeb 上的文本选择交互仍然没有达到预期。与 Flutter 应用不同,原生的 Web 应用会将每个节点构建为树形结构。...在传统的 Web 应用中你可以轻松用拖动手势来选择网页上的节点,这在 Flutter Web 应用中无法轻松达成。 从今天起,一切都发生了变化。...将页面滚动到底部的 DartPad,并跟随以下步骤进行操作: 缩小窗口让上半部分出现滚动条 将指针悬停在上半部分 使用触控板进行滚动Flutter 3.3 以前,使用触控板滚动拖动元素,因为 Flutter...将模拟的手势事件进行了下发 从 Flutter 3.3 开始,使用触控板滚动会正确地滚动列表,因为 Flutter 会传递「滚动」事件,卡片不会识别这些事件,而列表会进行对应的处理 想了解更多信息,请访问

2.8K20

Flutter 2.10更新详解

接下来让Flutter来一睹Flutter 2.10的更新吧: 使用 Flutter 构建 Windows 桌面应用支持已经进入稳定阶段 ⾸先,Flutter 2.10 版本带来了稳定的 Windows...Web 平台更新 此版本还包含对 Web 平台的一些改进。例如,在先前的版本中,当鼠标拖动到多行文本框的边缘时,它不会正确地跟随滚动。...在此版本中,当选择光标拖出了文本框时,文本框会进行滚动,浏览并选中对应的文字内容。此行为同时适⽤于 Web 平台和桌⾯端。...Flutter 2.10 还包括对 Web 平台的另一项显著改进,Flutter也一直在寻求减少将 Flutter 应用运行到 Web 平台的开销,在先前的版本中,每次Flutter想要将原⽣ HTML...在这个版本中FlutterWeb 平台构建了一个新的「⾮绘制的平台视图」,已经基本上消除了这种开销。

1.5K30

Flutter Web在美团外卖的实践

由于 Flutter Web 自身实现了一套页面滚动机制,页面滚动过程中,会频繁计算位置信息,引起滚动区域内容被重新创建,最终导致页面滚动性能较差。...(2)各平台实现在 Web无法对齐的场景,如路由库 MTFlutter 路由库是 Native 底层维护的一套全新的路由体系,依靠原生支持提供了强大的定制化功能,而在 Web无法这些无法在各平台原生实现层达到...但在 Flutter Web 中,这些预处理的操作目前官方还不支持,原因是 Flutter 暴露给我们的命令只有一个 flutter build web,导致我们无法直接进行更细粒度的个性化定制。...无法使用 CDN:Flutter 仅支持相对路径的加载方式,无法使用当前域名以外的 CDN 域名,导致无法享受 CDN 带来的优势。...使用 Safari 的 Canvas 分析工具,我们发现问题的根本原因是页面滚动的过程中,Flutter 会频繁的创建滚动区域的 Canvas,每次创建的 Canvas 内存都在10~70M 不等,滚动的内容越多

2.1K20

探索“流畅感”——谈手势动效体验设计

如今,很多App都使用前端语言来开发内部页面(HTML/CSS/JS)。随着Web混合开发,Flutter等跨端技术栈的出现,越来越多的团队开始拥抱这样的跨平台技术栈。...如果直接识别,这个偏移直接被识别为向下滑动,那就会无法触发左右滑动的手势。...打造流畅体验设计 腾讯文档是基于Web / Flutter的应用,并且接管了很多原生系统的能力,包括排版能力、光标选区能力,拖动能力等。...用户在拖动光标的时候,手指经常会不自觉的向下移动。这是为了让自己看清光标,这个时候,我们不应该把这个移动当做是把光标向下移动一行,光标本身不应该跟随向下,应该只在同一行,并且只响应左右移动。...但是当我向下拖更多距离的时候,光标就应该一直保持在手的上方,以确保用户可以精确操作。 同样,我们定义了长按后可以拖动选择的手势。在拖动的过程中,允许用户向下偏移一定的区域,来看清选区的具体边界位置。

1.2K20

基于 FlutterWeb 渲染引擎「北海」正式开源

阿里巴巴历时 3 年自研开发的 Web 渲染引擎 北海(英文名:Kraken)正式开源,致力打造易扩展,跨平台,高性能的渲染引擎,并已在优酷、大麦、天猫等业务场景中使用。...所以我们积极探索一种向上对接前端生态,向下使用原生渲染的跨平台方案。 于是诞生了这款基于 W3C 标准的高性能跨终端渲染引擎——北海(Kraken)。 ?...无限滚动列表 在业务开发中,有时开发者会遇到一些无法用分页却又大量数据的「无限滚动列表」。...同步光栅化 在浏览器中,光栅化是异步进行的,进行惯性滚动时,会出现白屏,这个是 WebView 始终无法避免的问题。...而借助 Flutter 足够高效的同步光栅化实现,Kraken 可以做到长列表快速滚动不白屏。

1.4K20

Flutter跨平台移动端开发丨SingleChildScrollView、ListView......

默认情况下,Flutter会根据具体平台分别使用不同的ScrollPhysics对象,应用不同的显示效果,如当滑动到边界时,继续拖动的话,在iOS上会出现弹性效果,而在Android上会出现微光效果。...如果你想在所有平台下使用同一种效果,可以显式指定,Flutter SDK中包含了两个ScrollPhysics的子类可以直接使用: ClampingScrollPhysics→Android下微光效果...默认情况下,Flutter会根据具体平台分别使用不同的ScrollPhysics对象,应用不同的显示效果,如当滑动到边界时,继续拖动的话,在iOS上会出现弹性效果,而在Android上会出现微光效果。...如果你想在所有平台下使用同一种效果,可以显式指定,Flutter SDK中包含了两个ScrollPhysics的子类可以直接使用: ClampingScrollPhysics→Android下微光效果...默认情况下,Flutter会根据具体平台分别使用不同的ScrollPhysics对象,应用不同的显示效果,如当滑动到边界时,继续拖动的话,在iOS上会出现弹性效果,而在Android上会出现微光效果。

8.6K51

Flutter 2.5正式版发布,带来重大更新

不幸的是这也导致了太多的主要 GC,并且有时仍然无法足够快地回收内存。...另一个改进是添加了 scroll metrics notifications(#85221、#85499),即使用户没有滚动,它也会提供可滚动区域的提示。...同时,在 Web 上查看相机预览、拍照、使用闪光灯和缩放控件提供基本支持,不过目前还不是被认可的插件,因此开发者需要明确添加它以在才能在 Web使用。...其他 除此之外,Flutter 2.5的重大更改和弃用还有如下一些: 默认拖动滚动设备 在 v2.2 之后删除了弃用的 API 引入包:flutter_lints ThemeData 的 accent...属性已被弃用 手势识别器清理 用 collate 替换 AnimationSheetBuilder.display 使用 HTML 插槽在 Web 中呈现平台视图 将 LogicalKeySet 迁移到

4.3K50

关于Flutter 2.5稳定版你知道多少?

不幸的是,在实践中这造成了过多的回收,而且内存有时仍然不能被快速回收,导致无法避免在内存有限的设备上出现低内存的情况。...当我们讨论滚动时,另一个改进是增加了额外的滚动指标通知 (#85221、#85499),即使用户没有滚动,也会提供可滚动区域的通知。...此外,你也许会注意到 camera 插件 的 Web 功能已处于预览阶段 (#4151)。这个预览版提供了对查看相机预览、拍摄照片、使用闪光灯和变焦控制的基本支持,所有这些都可以在 Web 上进行。...它目前不是一个 被认可的联合插件,因此在配置中,你需要明确这个插件仅能够在 Web 应用中 添加使用。 最初的 Android 相机重构工作是由 acoutts 贡献完成的。...以下是 Flutter 2.5 版本中的破坏性改动: 默认的设备拖动滚动 v2.2 版后删除了废弃的 API Package 介绍: flutter_lints ThemeData 的 accent

3.6K20

Flutter 2.5正式版发布,带来多项重大更新

不幸的是这也导致了太多的主要 GC,并且有时仍然无法足够快地回收内存。...[在这里插入图片描述] 另一个改进是添加了 scroll metrics notifications(#85221、#85499),即使用户没有滚动,它也会提供可滚动区域的提示。...同时,在 Web 上查看相机预览、拍照、使用闪光灯和缩放控件提供基本支持,不过目前还不是被认可的插件,因此开发者需要明确添加它以在才能在 Web使用。...其他 除此之外,Flutter 2.5的重大更改和弃用还有如下一些: 默认拖动滚动设备 在 v2.2 之后删除了弃用的 API 引入包:flutter_lints ThemeData 的 accent...属性已被弃用 手势识别器清理 用 collate 替换 AnimationSheetBuilder.display 使用 HTML 插槽在 Web 中呈现平台视图 将 LogicalKeySet 迁移到

3.5K00

迈向Flutter深水区:美团外卖Web-App一体化架构实践

挑战主要有两点: 加载性能问题:Flutter Web 项目构建只暴露了 Flutter Build Web,我们无法直接进行更细粒度的个性化定制。...我们对编译流程进行了干预,补齐了这部分功能,使得项目能满足基本的投产要求 滚动性能问题:在 HTML 编译模式下,Flutter Web 实现了一套页面滚动机制,页面滚动过程中,会引起滚动区域中的 Canvas...我们对 Flutter SDK 进行了改造,页面滚动时,Canvas 是被缓存起来而不是重新创建,对滚动性能有比较明显的提升,足以应对大部分业务场景 3Flutter Web 是否值得尝试?...但由于 canvaskit.wasm 文件过于庞大 (2.5m),降低了加载性能,因此目前不是很建议在 Web 项目中直接使用 CanvasKit。...如果项目里已经有一个 Flutter 移动应用: 对于没有 Web 版本的项目,可以直接使用同样的代码来构建其 Web 版本,然后把应用的用户群从移动扩展到 Web 渠道 对于有 Web 版本的项目,可以收敛

1.3K10

flutter系列之:移动端的手势基础GestureDetector

原生的andorid和IOS当然可以做到这些事情,作为一个移动的的开发框架flutter,自然也能够支持手势。...flutter中的手势支持叫做GestureDetector,一起来看看flutter中的手势基础吧。Pointers和Listener我们先来考虑一下最简单的手势是什么呢?...很明显,最简单的手势就是模拟鼠标的点击操作。我们可以将其称之为Pointer event,也就是各种点击事件。...注意,flutter中并没有取消或停止进一步分派Pointer事件的机制。...比如,当用户同时进行水平和垂直拖动的时候,两个识别器在接收到指针向下事件时都会开始观察指针移动事件。如果指针水平移动超过一定数量的逻辑像素,则水平识别器获胜,然后将该手势解释为水平拖动

1.3K20

Flutter 首页必用组件NestedScrollView的示例详解

昨天Flutter 1.17版本重磅发布,新的版本主要是优化性能、修复bug,有人觉得此版本毫无亮点,但也从另一方面体现了Flutter目前针对移动端已经较为完善,想了解具体内容,文末有链接,如果你想升级到最新版本...,建议慎重,有些人升级后项目无法运行。...与TabBar配合使用 用法如下: NestedScrollView( headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled...reverse参数表示反转滚动方向,并不是由垂直转为水平,而是垂直方向滚动时,默认向下滚动,reverse设置false,滚动方向改为向上,同理水平滚动改为水平向左。...交流 Flutter博客地址(近200个控件用法):http://laomengit.com 总结 到此这篇关于Flutter 首页必用组件NestedScrollView的文章就介绍到这了,更多相关Flutter

3.5K40

Flutter ListView 拖拽排序了解一下

ReorderableListView 想要达到如上效果,需使用该类,官网简介: A list whose items the user can interactively reorder by dragging...简单翻译如下: 用户可以通过拖动来重新排序的列表。 该类适用于少量 children 的页面,因为构造列表需要为每一个 children 执行操作,而不只是可见的 children。...', ); 了解一下各个参数: •header:是一个不参与拖动排序的 Widget•children:不用多说,列表项•onReorder:见名知意,重新排序后的回调•scrollDirection:...-= 1; } var temp = _data.removeAt(oldIndex); _data.insert(newIndex, temp); }); 1.先判断是向上还是向下拖拽...2.如果是向下拖拽,那么 newIndex 会多加一个,我们把它减掉3.然后我们删除旧数据并保存它4.最后在新的 index 上插入 ListView 的拖拽排序和删除 既然前面说到了 ListView

2.7K40

牛赞:音视频前端跨平台技术应用

由于FlutterWeb自身实现了一套页面滚动机制,页面滚动过程中,会频繁计算位置信息,引起滚动区域的重新渲染,最终导致页面滚动性能较差。...目前Flutter官方建议是FlutterWeb端适合以下三种场景: 使用Flutter构建的渐进式Web应用程序; 单页应用程序; 将现有的移动应用程序发布到web上。...目前我们的SDK在dev测试版上也开放了对Web的支持,跟Native的对比多了一层Web兼容层,主要为了兼容Flutter Native API设计,实际上Web和Native的通信并不依赖于消息通道...未来,Flutter对桌面端/web端的支持会越来越好,一套框架打通全平台非常值得期待。 4. Web端音视频能力畅想 Web端的⾳视频能⼒也在不断的进化,浏览器已经变成⼀个完备的多媒体引擎。...当浏览器的能力提升之后,一个Web版本的OBS成为了可能,它能带来以下优势: 多采集源的支持,能同时支持多人通话直播; 所见即所得的效果,可通过拖动改变布局; 操作简单,打开网页即能直播。

2.6K10

Flutter』手势交互

1.前言经过上篇文章的介绍,已经将跨页面之间跳转的时候传参的方式介绍给大家了,本篇文章将给大家介绍如何在 Flutter使用手势交互。...Swipe(滑动):onPanUpdate: 当用户在屏幕上拖动时连续触发。onPanStart: 当滑动开始时触发。onPanEnd: 当滑动结束时触发。...最后,GestureDetector还包含一些处理垂直拖动事件的函数,如onVerticalDragDown、onVerticalDragStart、onVerticalDragUpdate这些函数在用户在容器上执行垂直拖动操作时触发...如果 details.delta.dy 输出的值是负数,说明是向上滑动,反之则是向下滑动。...3.参考资料https://docs.flutter.dev/ui/interactivity/gestureshttps://api.flutter.dev/flutter/widgets/GestureDetector-class.htmlEnd

26352

Flutter Web鼠标相关处理

前言 我们在利用Flutter Web开发pc端可以访问的网站,所以会有一些关于鼠标的处理。 悬停 可以点击的widget,如button。如果鼠标悬停到这部分,会出现阴影,并且按下和释放都有阴影。...TextButton 在Flutter2.0中如果使用FlatButton就会提示已不建议使用,替代的是2.0新加入的TextButton。..... ) 注意buttonTheme和textButtonTheme,一个是负责MaterialButton及其子类的,一个是负责TextButton及其子类的,如果app中两类button都使用了...区域显示隐藏 pc上会有一种需求,当鼠标移到某个区域则显示,移出则隐藏。比如播放器的底部操作栏,平时是隐藏的,不影响观看,当鼠标移到底部则显示。...这种需求可以通过MouseRegion实现,它类似GestureDetector,GestureDetector只能处理手势相关的,比如点击、拖动等等,而MouseRegion则处理鼠标相关,包含进入onEnter

1.5K20
领券