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 是内部使用的变量名
}
相关推荐
不太可爱的叶某人5 小时前
【学习笔记】MySQL技术内幕InnoDB存储引擎——第5章 索引与算法
笔记·学习·mysql
岁岁岁平安5 小时前
Redis基础学习(五大值数据类型的常用操作命令)
数据库·redis·学习·redis list·redis hash·redis set·redis string
知识分享小能手7 小时前
Vue3 学习教程,从入门到精通,使用 VSCode 开发 Vue3 的详细指南(3)
前端·javascript·vue.js·学习·前端框架·vue·vue3
pay4fun7 小时前
2048-控制台版本
c++·学习
知识分享小能手8 小时前
Bootstrap 5学习教程,从入门到精通,Bootstrap 5 表单验证语法知识点及案例代码(34)
前端·javascript·学习·typescript·bootstrap·html·css3
weixin_418813879 小时前
Python-可视化学习笔记
笔记·python·学习
Haoea!9 小时前
Flink-05学习 接上节,将FlinkJedisPoolConfig 从Kafka写入Redis
学习·flink·kafka
丁满与彭彭10 小时前
嵌入式学习笔记-MCU阶段-DAY01
笔记·单片机·学习
呼啦啦--隔壁老王11 小时前
dexopt学习待整理
学习
无限远的弧光灯11 小时前
c语言学习_函数递归
c语言·开发语言·学习