1.19 减少视图修饰符的维护量
2 分钟阅读
原文链接: https://developer.apple.com/documentation/swiftui/reducing-view-modifier-maintenance
1.19 减少视图修饰符的维护量
把经常复用的视图修饰符打包成自定义视图修饰符。
概述
为了获得一致的视图,你可能会在各处反复复用同一个视图修饰符或同一组修饰符。例如,你可能对应用中许多文本实例应用相同的字体和前景色,让它们看起来一致。遗憾的是,这会带来维护上的困难,因为哪怕是格式上很小的改动(比如换一个字号),都需要修改代码中许多不同的地方。
为避免这种开销,请用 ViewModifier 协议的实例把一组修饰符收集到一个地方。然后扩展 View 协议,添加一个使用你的修饰符的方法,使它易于使用和理解。把这些修饰符收集在一起,就为你想修改它们时提供了一个唯一的修改位置。
创建自定义视图修饰符
创建自定义修饰符时,请按这组修饰符的用途来命名。例如,如果你反复对视图应用 caption 字体样式和次要配色方案,以表示次要样式,可以把它们收集为 CaptionTextFormat:
| |
用 modifier(_:) 方法应用你的修饰符。下面的代码把上面的例子应用到一个 Text 实例上:
| |
扩展 View 协议以提供流畅的修饰符访问方式
为让自定义视图修饰符用起来更方便,请扩展 View 协议,添加一个应用该修饰符的函数:
| |
有了这个扩展之后,就可以把它应用到文本视图上:
| |