一、本期目标
将具有共性的字体进行扩展,实现一句代码调用,由浅入深掌握 extension 命令
学完本篇后,可以将 1-1 这种代码简化成 1-2 的样子

1-1

1-2
二、实现过程
1、先上代码;
extension Text {
func 字体() -> some View {
return self
.font(.custom("HYFangSongS", size: 20))
.foregroundColor(.primary)
}
}
2、代码解释
2.1、因为我们的所有样式都是为了改变 Text 的,所以,我们需要进行扩展的主角是 “Text”,即代码中第一行的 extension Text;
2.2、为我们的主角增加一个 有返回值 的函数 ,这里返回的是 some view 类型,即代码中第二行的内容:func 字体() -> some View ,其中函数名 “字体()”可以根据自己需要起名字;
2.3、将想要给文字的效果,以返回值的方式输出:
return self //返回自身
.font(.custom("HYFangSongS", size: 20)) // 字体为“HYFangSongS” ,字号为20
.foregroundColor(.primary) // 文字的颜色为primary
三、调用方法
直接在 Text 后加 “ .字体() ” 即可。
本篇完
送给想学《缠论》但一直被缠的朋友,下面这个视频可能是你遇到的最易懂的缠论课程