Swift SwiftUI 学习笔记 2024

Swift SwiftUI 学习笔记 2024

一、资源

视频资源 StanfordUnivercity 公开课 2023: https://cs193p.sites.stanford.edu/2023
教程 Swift 初识:基础语法:https://docs.swift.org/swift-book/documentation/the-swift-programming-language/guidedtour/

二、Playground

如何打开 playground?

找到 File -> New -> PlayGround

三、class 与 struct 的区别

  • struct 是值类型的变量,传递的时候传递的是值的复制值
  • class 是引用型变量,传递的时候传递的是它的引用
  • class 需要 init 方法进行初始化, struct 则不需要,默认就对内部的变量进行 init 操作,可以说是免 init
  • struct 内的所有变量都必须有默认值

struct 写法,简写

swift 复制代码
RoundedRectangle(cornerRadius: 20)
RoundedRectangle(cornerRadius: 20).fill()
swift 复制代码
VStack {
    CardView(isFaceUp: true)
    CardView()
    CardView()
    CardView(isFaceUp: true)
}
VStack() {
    CardView(isFaceUp: true)
    CardView()
    CardView()
    CardView(isFaceUp: true)
}
swift 复制代码
VStack{}
.onTapGesture(perform: {
    print("tapped")
})
// ===
VStack{}
.onTapGesture {
    print("tapped")
}

struct 特性

如果想改变 struct 内的变量,如果方法要改变值,需要添加 matable

struct 只有一条指令时,不需要使用 return

四、 一些知识

Bool 有 .toggle 方法

swift 复制代码
func toString(by offset: Int, label: String) -> some View {
	// by 是外部变量名  offset 是内部使用的变量名
}
相关推荐
气概3 小时前
法奥机器人学习使用
学习·junit·机器人
Qhumaing3 小时前
C++学习:【PTA】数据结构 7-1 实验7-1(最小生成树-Prim算法)
c++·学习·算法
好大哥呀4 小时前
Java Web的学习路径
java·前端·学习
梦雨羊6 小时前
Base-NLP学习
人工智能·学习·自然语言处理
丝斯20116 小时前
AI学习笔记整理(42)——NLP之大规模预训练模型Transformer
人工智能·笔记·学习
小猪佩奇TONY6 小时前
Linux 内核学习(14) --- linux x86-32 虚拟地址空间
linux·学习
副露のmagic6 小时前
更弱智的算法学习 day28
学习
ha20428941947 小时前
Linux操作系统学习记录之---TcpSocket
linux·网络·c++·学习
凉、介8 小时前
深入 QEMU Guest Agent:虚拟机内外通信的隐形纽带
c语言·笔记·学习·嵌入式·虚拟化
崇山峻岭之间8 小时前
Matlab学习记录31
开发语言·学习·matlab