SwiftUI 从入门到学废
文章平均质量分 64
不推荐你购买专栏,知识点不系统,专栏内容是我遇到问题就去研究研究,记录了研究的笔记和实例。
优惠券已抵扣
余额抵扣
还需支付
¥29.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
小弟调调
这个作者很懒,什么都没留下…
展开
-
如何在 SwiftUI macOS 应用程序中显示和隐藏边栏
本文将告诉您如何通过添加其他选项来显示和隐藏边栏来缓解此问题。侧边栏一旦折叠,就无法恢复。拖动左边缘会调整窗口大小,而不是将侧边栏带回来。有两种方法可以解决这个问题。原创 2022-12-29 10:12:29 · 1920 阅读 · 3 评论 -
如何在 Xcode 中添加创建 Swift 包依赖?
到目前为止,我们一直在编码的所有东西都是我们从头开始构建的,因此您可以确切地看到它是如何工作的,并将这些技能应用到您自己的项目中。 但是,有时从头开始编写一些东西是有风险的:也许代码很复杂,也许很容易出错,也许经常更改,或者任何其他无数的原因,这就是存在依赖关系的原因——获取第三方代码的能力 并在我们的项目中使用它。Xcode 内置了一个依赖管理器,称为 Swift Package Manager (SPM)。 你可以告诉 Xcode 一些在线存储的代码的 URL,它会为你下载它。 您甚至可以告诉它下载哪原创 2021-10-20 09:17:58 · 1985 阅读 · 0 评论 -
SwiftUI 如何使用HStack,VStack,ZStack进行 Spacer 间隔和对齐
深入了解堆栈(HStack,VStack和ZStack) 通过组合水平和垂直堆栈中的视图来为复杂的用户界面进行布局已经有一个介绍 SwiftUI 中的对齐(VStack,HStack,ZStack)指南 有了一次了解之后,使用 Stack 堆栈配合 Spacer,进行更复杂的界面视图布局。VStack 垂直布局VStack允许您从上到下垂直堆叠视图。 您可以通过向VStack添加对齐方式或间距来进一步自定义视图。VStack(alignment: .leading, spacing: 16) {原创 2021-05-02 00:08:25 · 1643 阅读 · 0 评论 -
SwiftUI:如何设置文本视图的样式
您可以使用一堆专用的 ViewModifiers 设置 SwiftUI 文本视图的样式。在本文中了解它们。如何应用斜体文字样式?您可以使用 italic 修饰符将字体切换为斜体。Text("斜体") .italic()如何应用粗体文字样式?您可以使用 bold 修饰符将字体切换为粗体。Text("粗体") .bold()当然,您可以堆叠这两个修饰符以创建斜体和粗体字体。Text("粗体 & 斜体") .bold() .italic()如何更改原创 2021-04-22 17:09:04 · 250 阅读 · 0 评论 -
SwiftUI: 如何使用 AppStorage 存储日期
默认情况下,@AppStorage 属性包装器支持 Int,String,Double,Data或URL值。 如果使其他 类classes、结构structs、枚举enums符合 RawRepresentable 协议,则可以存储它们。 本教程将学习如何将日期保留在 @AppStorage 处理的UserDefaults 中。@AppStorage("savedDate") var date: Date = Date()上面示例,Swift 编译器给您一个错误,因为 @AppStorage 属性包装器原创 2021-04-23 13:40:28 · 350 阅读 · 0 评论 -
SwiftUI: 从 React 开发人员的角度看 SwiftUI
最近我通过学习 SwiftUI 时,令我印象最深的就是我对它的熟悉程度,因为我已经在 React 和 TypeScript上工作了几年了。确实,有使用 React 库/框架和类型的经验可以极大地加快我的学习速度。 我的第一个SwiftUI代码对我过去在 React 中构建的东西感到非常陌生,而且我可以看到设计模式有很多重叠之处。现在,我开始自己开发应用程序,我想分享一些常见的设计模式以及 SwiftUI 和 React 之间的微小差异,通过这些差异我一直遇到这些差异,通过总结这些差异帮助我更好的开发自原创 2021-04-19 16:22:05 · 276 阅读 · 0 评论 -
Swift 中使用 Apple CryptoKit 和用户指定的密码进行加密和解密
Apple 发布了 Swift Crypto,这是 iOS 13 和 macOS Catalina 中附带的CryptoKit 框架的开源实现,使我们能够在 Linux 上使用相同的 API 进行加密和哈希处理。Apple CryptoKit 文档中提供的示例。但是这些示例它没有说明这实际上是如何工作的。 您如何制作钥匙,以及如何在实践中使这种东西起作用。创建密钥import CryptoKit// 根据给定的密码创建加密密钥/// - 参数 password:用于生成密钥的密码func key原创 2021-04-14 15:22:18 · 626 阅读 · 0 评论 -
SwiftUI @ObservedObject,@State 和 @EnvironmentObject 有什么区别?
在任何现代应用中,状态都是不可避免的,但是使用 SwiftUI 时要记住,我们所有的视图只是其状态的简单功能 - 我们不直接更改视图,而是操纵状态并由其决定更改结果。SwiftUI 为我们提供了几种在应用程序中存储状态的方法,但是它们有些微的不同,因此,重要的是要了解它们的不同之处,以便正确使用框架。@State使用状态的最简单方法是 @State 属性包装器,其用法如下:struct ContentView: View { @State private var tapCount = 0原创 2021-04-13 10:21:44 · 284 阅读 · 0 评论 -
SwiftUI 中使用 Alerts, Action Sheets, Modals 和 Popovers
Alerts & Action SheetsAlerts 和 Action Sheets都使用类似的两种方式将其呈现给用户。 让我们从一个简单的开始。 我们必须描述一个可以由SwiftUI观察到的布尔绑定,一旦布尔值为true,SwiftUI就会立即显示操作表或警报。struct ContentView: View { @State private var showActionSheet = false var body: some View { VStack原创 2021-04-09 18:38:29 · 250 阅读 · 0 评论 -
SwiftUI 中的对齐(VStack,HStack,ZStack)指南
SwiftUI 为我们提供了一些容器视图,可用于构建布局。 您可能已经熟悉VStack,HStack和ZStack。 所有这些容器视图都使用对齐方式来调整子视图在容器内的位置。 让我们看一个非常基本的例子。 VStack(alignment: .leading) { Text("苹果????") Text("橘子????") Text("桃子????") Text("栗子????") }在上面的示例中,我们有一个垂直的容器视图,从上到下显示子视图。 我们将对齐原创 2021-04-09 00:15:35 · 1717 阅读 · 0 评论 -
SwiftUI 如何使用 Touch ID 和 Face ID?
苹果公司的绝大多数设备都标配有生物识别认证,这意味着它们使用指纹和面部识别来解锁。我们也可以使用此功能,这意味着我们可以确保仅当有效用户解锁后才能读取敏感数据。在编写任何代码之前,您需要向 Info.plist 文件中添加一个新密钥,向用户说明为什么要访问 Face ID。由于只有 Apple 知道的原因,我们在代码中传递了 Touch ID 请求原因,而在 Info.plist 中传递了 Face ID 请求原因。立即打开 Info.plist,右键单击一些空间,然后选择 Add Row。滚动键列表原创 2021-04-07 17:33:31 · 302 阅读 · 1 评论 -
SwiftUI 如何隐藏和显示 NavigationView 侧边栏?
在 macOS 中, 希望通过手动控制 Sidebar 的展示也隐藏。幸运的是,我们可以使用下面方法实现:struct ContentView: View { var body: some View { NavigationView { }.toolbar { ToolbarItem(placement: .navigation) { Button(action: toggleSidebar, label转载 2021-04-07 10:30:25 · 847 阅读 · 0 评论 -
SwiftUI 如何使用其偏移量 offset 调整视图的位置?
所有视图在层次结构中都具有自然位置,但是 offset() 修饰符使您可以相对于该自然位置移动它们。 这在ZStack内部特别有用,可以在其中控制视图的重叠方式。重要提示:使用 offset() 将使视图相对于其自然位置移动,但不会影响其他视图的位置或在偏移之后放置的任何其他修改器的位置。 这意味着您需要仔细考虑如何使用它,尤其是要使视图不重叠时(并非出于您的意图)。例如,在此 VStack 中,我们可以使用 offset() 将第二项向下移动15点,以便它开始与第三项重叠:VStack { Te原创 2021-04-07 09:53:01 · 921 阅读 · 0 评论