
在 2025 年的全球开发者大会(WWDC)上,苹果公司发布了其声明式UI框架SwiftUI的最新版本,引入了两项重大更新:一种新的 SwiftUI 原生WebView
类型和在 TextView 控件中支持富文本编辑。此次更新还带来了大量额外的改进和新的性能工具。
新的WebView
类型可以在应用中显示 HTML、CSS 和 JavaScript 内容。默认情况下,该视图提供了用户熟悉的浏览体验,包括支持使用链接在网页之间导航,以及前进和后退按钮。然而,你可以通过将WebView
与WebPage
关联来完全自定义导航行为。这是一个@Observable
类,暴露了网页内容属性,并允许跟踪它们的变化。例如,你可以通过观察currentNavigationEvent
来跟踪页面何时完全加载。
为了使富文本编辑易于实现,iOS 26 中的 SwiftUI 扩展了TextEditor
视图,支持AttributedString
。正如苹果在WWDC上展示的那样,启用富文本编辑就像在初始化TextEditor
时更改绑定状态的类型一样简单:
苹果提供了一个代码示例,开发者可以使用它来探索全部的功能范围,包括添加自定义控件和限制编辑器中可用的格式选项。
新的宏@Animatable
简化了视图、视图修饰符、文本渲染器、形状以及其他结构体或类的动画功能。它通过类型中声明的可动画属性实现animatableData
属性,自动合成以遵循Animatable
协议。例如,你可以像下面这样使用它来实现width
和angle
属性的动画,同时排除不可动画的属性,如isOpaque
:
另外,还有几项新增功能能够使使用 UIKit 和 SwiftUI 的开发者从中受益。值得注意的是,新的UIHostingSceneDelegate
类使得将 SwiftUI 场景桥接到 UIKit 成为可能,就像UIHostingController
允许管理 SwiftUI 视图一样。这将集成能力扩展到完整的场景中,而不仅仅是单个视图。
最后但同样重要的是,SwiftUI 完全支持新的 Liquid Glass 设计语言。Liquid Glass是一种动态材料,结合了玻璃的光学特性和流动性。它会从下方折射内容,从周围反射光线,并在其边缘产生透镜效果,为界面带来深度和动感。
要利用这一点,应用不需要重新设计,只需使用 Xcode 26 重新构建以利用新设计即可。然而,为了完全拥抱 Liquid Glass,苹果建议审查前景元素如何与动态背景形成对比,并选择使用新的系统材料以确保可访问性和视觉和谐。
另外,iOS 26 还包括了Swift Charts的增强版本,现在已支持3D图形。这次更新允许开发者在三维空间中绘制数据,可视化数学曲面,并创建更具沉浸感和信息量的视觉化效果。Swift Charts 现在能够让开发者可以配置相机,调整光线和材料,并微调渲染属性。
SwiftUI 26 包含的内容远不止我们这里所能涵盖的,所以请查看官方的WWDC会议以获取全部细节。
查看英文原文:SwiftUI for iOS 26 Embraces LiquidGlass, Introduces WebView and Rich Text Editing
评论