写点什么

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:307812

评论

发布
暂无评论

Java | this和super关键字【深入理解子类和父类的继承关系】

Fire_Shield

super this 9月月更

手写vue-router核心原理

hellocoder2029

Vue

总览 Java 容器--集合框架的体系结构

钟奕礼

Java 面试 java;

【Java深入学习】并发常见方法的注意事项

钟奕礼

Java 面试 java;

LED显示屏价格与品质哪个更重要

Dylan

LED LED显示屏 led显示屏厂家

融云x白鲸《2022社交泛娱乐出海白皮书》

融云 RongCloud

互联网 白皮书 融云

深入剖析nodejs中间件

coder2028

node.js

idea 远程开发 client

黄敏

模块一作业

Geek_1264yp

IP地址和MAC地址都可以确定目标地址,为什么二者都在使用,舍弃一个是否可行?

阿柠xn

Mac IP 网络 协议族 9月月更

概述数据交换的构建策略

穿过生命散发芬芳

数据交换 9月月更

公司用的堡垒机叫什么?多少钱?

行云管家

网络安全 堡垒机 等级保护 过等保

2022届秋招Java岗高频面试题盘点,老司机也未必全会,真的太卷了

钟奕礼

Java 面试 java;

阿里云服务器ECS基本操作指南

六月的雨在InfoQ

阿里云 SSH xshell 云服务器ECS 9月月更

开发者有话说|成长之路

六月的雨在InfoQ

个人成长 开会 996 007 9月月更

2022第三届云原生编程挑战赛--Serverless VSCode WebIDE使用体验

六月的雨在InfoQ

Serverless 边缘容器 9月月更 Serverless VSCode WebIDE 线上ide

字节半天*3面/5天拿offer,全凭自身硬实力和这份Java面试笔记

钟奕礼

Java 面试 java;

【编程基础】利用Python实现阿姆斯特朗数的求解

迷彩

Python 9月月更 阿姆斯特朗数 水仙花数

架构实战训练营模块1作业--开启架构之旅

阿姆斯壮

架构实战营 #架构实战营

中心化决议管理——云端分析

字节跳动终端技术

ios 研发效能 CocoaPods 制品库 云化服务

SAE 助力贵州酒店集团从容支撑贵州特产抢购

阿里巴巴中间件

阿里云 Serverless 云原生 SAE

Java开发5年,复习1个月成功上岸京东物流,面试和复习思路分享

钟奕礼

Java 面试 java;

玩转 Flowable 流程实例

江南一点雨

Java springboot workflow flowable

HTTP - TLS1.3 初次解读

懒时小窝

一比一手写迷你版vue,彻底搞懂vue运行机制

hellocoder2029

JavaScript

时隔一年多 jQuery 再度发布 3.6.1 新版本,你还在用JQ吗?

茶无味的一天

JavaScript 前端 框架 ​jQuery

为什么大数据工程师比数据科学家的需求更大

雨果

数据工程师

数据API开发如何快速上手:先了解什么是数据API生命周期管理

雨果

API 数据api

java基础面试题

钟奕礼

编程 java;

组装式交付-云巧 知多少

六月的雨在InfoQ

9月月更 云巧 组装式交付 云巧资产 云巧工坊

想从事运维岗位应该学习什么技能?谁能告诉一下?

行云管家

运维 网络运维 IT运维

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