最新发布第23页
语法(四) – 懒加载-Stewed Noodles 资源

语法(四) – 懒加载

懒加载是统性能优化的方式之一。 懒加载闭包 基本语法,如下所示 lazy var yourVariableName: SomeType = { return SomeType(whatever: 'foobar') }() 懒加载闭包代码示例 class Singer { let n...
jiulinxiri的头像-Stewed Noodles 资源烩之面大会员jiulinxiri1年前
0446
冲奶-Stewed Noodles 资源

冲奶

奶粉母乳比例3:2 奶粉/水/母乳比例 总量(水+母乳) 奶粉 水 母乳 175ML 3勺半 105ML 70ML 150ML 3勺 90ML 60ML 125ML 2勺半 75ML 50ML 100ML 2勺 60ML 40ML 注: 冲奶需 45°C 以下温开水。
jiulinxiri的头像-Stewed Noodles 资源烩之面大会员jiulinxiri1年前
03713
语法(三) – guard-Stewed Noodles 资源

语法(三) – guard

guard 语句的主要用法有以下几种: 提前返回 减少缩进级别 高Happy Path可见性 提前返回 guard 用于提前返回,如果某些先决条件未满足,则退出函数。 func giveAward(to name: String) { guard n...
jiulinxiri的头像-Stewed Noodles 资源烩之面大会员jiulinxiri1年前
02114
语法(二) – 空合操作符-Stewed Noodles 资源

语法(二) – 空合操作符

一个变量只有在确定有值的情况下才能被使用。另一种方法是使用 ! 显式地解除可选项。这也被称为 '崩溃操作符',因为如果在使用 ! 时将可选项设为 nil,那么程序将立即崩溃。 空合操作符 ??,允...
jiulinxiri的头像-Stewed Noodles 资源烩之面大会员jiulinxiri1年前
0519
语法(一) - 模式匹配-Stewed Noodles 资源

语法(一) – 模式匹配

Swift 的 switch 语句具有灵活却富有表现力的匹配模式。 基本使用 单值匹配 单值字符串匹配 let name = "twostraws" switch name { case "bilbo": print("Hello, Bilb...
jiulinxiri的头像-Stewed Noodles 资源烩之面大会员jiulinxiri1年前
03113
高级过渡-Stewed Noodles 资源

高级过渡

SwiftUI 的过渡系统允许我们自定义插入或移除视图的方式,可以在要过渡的视图周围插入一系列新视图、创建本地状态、添加复杂的动画等等。 本文创建的效果,如下所示 Twitter 点赞效果 添加新的...
jiulinxiri的头像-Stewed Noodles 资源烩之面大会员jiulinxiri1年前
04212
环境(三) - 自定义组件样式-Stewed Noodles 资源

环境(三) – 自定义组件样式

本文以 badge 为例,实现自定义组件样式的具体步骤: 创建一个 BadgeStyle 协议为角标样式定义接口。 为角标样式创建一个环境变键。 在 badge 修饰符中使用这个自定义角标样式。 ⻆标样式的协议...
jiulinxiri的头像-Stewed Noodles 资源烩之面大会员jiulinxiri1年前
04214
环境(二) - 自定义环境键-Stewed Noodles 资源

环境(二) – 自定义环境键

环境键的自定义需要两个必要步骤和一个可选步骤: 实现⼀个⾃定义的 EnvironmentKey。 在 EnvironmentValues 上添加扩展,并提供⼀个属性,让我们能在环境中获取和设置该值。 (可选) 在 View 上...
jiulinxiri的头像-Stewed Noodles 资源烩之面大会员jiulinxiri1年前
02714
环境(一) - 从环境中读取-Stewed Noodles 资源

环境(一) – 从环境中读取

环境 (environment) 本质上,它是⼀种内置的依赖注⼊ (dependency injection) 技术。 下⾯这个例⼦中,当我们在 VStack 上设置字体时,它会传播到两个 Text 视图中去,并改变它们的外观: Font ...
jiulinxiri的头像-Stewed Noodles 资源烩之面大会员jiulinxiri1年前
04714
自定义时序曲线-Stewed Noodles 资源

自定义时序曲线

SwiftUI 可以精细控制动画的运动方式,完全自定义贝塞尔路径,匹配我们想要的加速度或者减速度。 比如,我们创建一条时序曲线,在动画中心部分非常缓慢,但在边缘部分剧烈跳动。 extension Anim...
jiulinxiri的头像-Stewed Noodles 资源烩之面大会员jiulinxiri1年前
03412