写点什么

Flutter 3.27 发布,Impeller 成为默认渲染引擎,改进 iOS 和 Material 小部件

作者:Sergio De InfoQ

  • 2025-01-16
    北京
  • 本文字数:1025 字

    阅读完需:约 3 分钟

Flutter 3.27发布,Impeller 成为默认渲染引擎,改进 iOS 和 Material 小部件

谷歌跨平台 UI 套件 Flutter 最新版本为 Flutter 3.27,该版本带来了许多变化,包括改进的 Cupertino 小部件,更好地遵循苹果的 UI 指南,CarouselView、列表行和列、ModalRoutes 过渡等新特性。此外,新版本将 Impeller 渲染引擎设为默认引擎,性能得到显著提升,增强了对工具和并发的支持。


Cupertino 是一组严格遵循苹果人机界面指南的小部件。Flutter 3.27 更新了其中的一些,以提高其保真度,包括 CupertinoCheckbox、CupertinoRadio 和 CupertinoSlidingSegmentedControl。它还扩展了 CupertinoCheckbox 和 CupertinoSwitch,使它们更具可配置性,并使 CupertinoButton 与 iOS 15 引入的最新可定制性选项保持一致。其他改进涉及 CupertinoActionSheet、CupertinoContextMenu、CupertinoDatePicker 和 CupertinoMagnifier。


在 Android 原生 Material UI 方面,Flutter 3.27 对 CarouselView 进行了扩展,提供了 CarouselView.weighted,开发者可以使用 flexWeights 参数定义更动态的布局,指定在 CarouselView 中占用的相对权重。此外,SegmentedButton 可以垂直对齐,一些小部件也经过修复,以更好地遵循 Material 3 设计规范。


Flutter 3.27 还改进了 ModalRoutes、文本选择以及行和列的间距。ModalRoutes 通过占据整个导航器区域来阻止与先前路由的交互,现在可以将从路由的退出过渡与新路由的进入过渡同步,使它们能够很好地协同工作。文本选择现在支持 Shift + Click 手势,将选择范围扩展到 Linux、macOS 和 Windows 上的点击位置。行和列可以通过间距参数来调整它们之间的偏移,使布局更加灵活。


经过一年多的预览,新的 Impeller 渲染引擎已成为现代 Android 设备上的默认引擎,取代了旧的 Skia。Skia 仍可在遇到兼容性问题时作为备选方案使用。Impeller 尝试在编译时完成 Skia 在运行时执行的多项任务,例如构建着色器和反射以及提前创建管道状态对象,同时改进缓存机制,使性能更加可预测。它还通过标记纹理和缓冲区,并允许在不影响渲染性能的情况下将动画捕获到磁盘来改进对调试的支持。在必要时,Impeller 可以将单帧工作负载分配到多个线程以提高性能。


未来我们将继续改进 Impeller 在 Android 上的性能和保真度。此外,我们打算让 Impeller 的 OpenGL 后端达到生产就绪状态,并完全弃用 Skia。


其他值得一提的改进包括 iOS 上的渲染性能提升、对 Swift Package Manager 的支持,以及 Android 的全屏和自由形态支持。


原文链接:

https://www.infoq.com/news/2024/12/flutter-3-27-released/

2025-01-16 11:301

评论

发布
暂无评论

交易所合约跟单软件搭建,火币合约跟单平台开发

【科创人】贝锐创始人陈宇晔:花生壳诞生自一次挫折,15年坚守有温度不作恶

科创人

HDFS的动态扩容及动态缩容

五分钟学大数据

hadoop hdfs 4月日更

iOS 面试策略之算法基础4-5节

iOSer

ios 面试 算法面经 算法解析

推荐25种自媒体运营必备工具 (建议收藏)

科技猫

工具 网站 分享 运营 自媒体

Java开发9年经验,三轮技术面+HR面试成功砍下阿里巴巴Offer!

Java架构追梦

Java 阿里巴巴 架构 面试

iceberg查询加速原理

聚变

融云 CTO 杨攀:技术人员如何创业?

Yano

涨薪5K的Java虚拟机:垃圾回收,Serial GC,卡表你想学吗?

小Q

Java 学习 面试 JVM GC

2021年5个最佳YouTube视频下载器

科技猫

软件 工具 网站 分享 下载youtube视频

阿里P8亲自讲解!带你一步一步深入Handler源码,满满干货指导

欢喜学安卓

android 程序员 面试 移动开发

进公司不会用 Git 拉项目!第二天被开除?

Java架构师迁哥

阿里P8大牛亲自教你!带你快速通过面试,Android岗

欢喜学安卓

android 程序员 面试 移动开发

汽车之家基于 Flink 的数据传输平台的设计与实践

Apache Flink

flink

区块链技术重新定义 物联网的物与物之间的交易

CECBC

发展空间

微服务转型系列2:微服务转型的三大误区,避坑指南

BoCloud博云

微服务

Nacos 2.0 性能提升十倍,贡献者 80% 以上来自阿里之外

阿里巴巴云原生

微服务 开发者 云原生 dubbo 中间件

浅析“分布式锁”的实现方式丨C++后端开发丨底层原理

Linux服务器开发

redis zookeeper 分布式锁 Linux服务器开发 C++后端开发

数据虚拟化引擎openLooKeng介绍

openLooKeng

大数据 数据分析 Bigdata

Spark数据倾斜解决方案

大数据技术指南

spark 4月日更

《彩食鲜 CTO 乔新亮:程序员如何从技术走向管理》(采访提纲)

这就是编程

Java该怎么学?阿里大佬呕心沥血之作,Java全线成长宝典,从P5到P8一应俱全

Java架构师迁哥

程序员快乐的一天!

BinTools图尔兹

程序员 运维 开发 dba 数据库管理工具

图查询语言的历史回顾短文

NebulaGraph

数据库 数据库设计 图数据库

勇夺桂冠!百度智能云获山东电力输电人工智能技术竞赛第一名

百度大脑

百度智能云

Substrate 合约书之合约模型

Patract

智能合约 rust polkadot Patract Wasm

腾讯大神为什么会对这份“redis深度笔记”如此爱不释手?

Java架构师迁哥

portal 认证 - 下线流程

箭上有毒

4月日更

科技赋能快餐零售商突破瓶颈:英特尔AI技术助力汉堡王打造保护顾客隐私的订单推荐系统

E科讯

如何用 Electron + WebRTC 开发一个跨平台的视频会议应用

阿里云CloudImagine

阿里云 音视频 WebRTC Electron 视频云

有道写作浏览器扩展实践

有道技术团队

大前端 浏览器 有道云笔记

Flutter 3.27发布,Impeller 成为默认渲染引擎,改进 iOS 和 Material 小部件_Android/iOS_InfoQ精选文章