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 是内部使用的变量名
}
相关推荐
困死,根本不会2 分钟前
OpenCV摄像头实时处理:九宫格棋盘检测与棋子识别
笔记·opencv·学习
YangYang9YangYan13 分钟前
2026高职大数据专业数据分析学习必要性
大数据·学习·数据分析
wdfk_prog18 分钟前
[Linux]学习笔记系列 -- [drivers][gpio[[gpiolib]
linux·笔记·学习
RFCEO25 分钟前
学习前端编程:DOM 树、CSSOM 树、渲染树详解
前端·学习·渲染树·dom 树·cssom 树·浏览器的渲染流程·回流/重绘
Jackyzhe30 分钟前
从零学习Kafka:配置参数
分布式·学习·kafka
传说故事31 分钟前
【论文阅读】Being-H0.5:规模化以人为中心的机器人学习以实现跨具身化泛化
论文阅读·学习·机器人·具身智能
Jack___Xue38 分钟前
LangGraph学习笔记(四)---LangGraph检查点和Send机制
jvm·笔记·学习
近津薪荼43 分钟前
递归专题(2)——合并链表
c++·学习·算法·链表
辞旧 lekkk1 小时前
【Linux】Linux进程控制(三)自主实现简易shell命令行解释器
linux·运维·服务器·学习·萌新
学历真的很重要1 小时前
【系统架构师】第一章 计算机系统基础知识(详解版)
学习·职场和发展·系统架构·系统架构师