.position(x:y:) 指定的位置铺厨,如果是在一個 stack 里的話是相對位置,vstack 是縱向相對,hstack 是橫向相對
CGFloat:橫縱坐標(biāo)泡垃,size:width height。
mutating 可以修改 structure 里的 property羡鸥。
mvc 是 model view controller蔑穴,model = logic + data, controller collects logics and data from model and conveys them to view, at the same time gets the signals from view and pass them to model.
struct & class
class 創(chuàng)建的實例盡管使用 let 聲明但是卻可以修改,對于 struct 卻需要用 var 來聲明惧浴;
struct 內(nèi)的函數(shù)如要修改變量存和,需要 mutating keyword,但是 class 內(nèi)的函數(shù)卻不需要衷旅。
class 中:
let dragon = Dragon()
let dragon1 = dragon
此時 dragon 和 dragon1 指向的是同一實例捐腿,修改任意一方會同時修改兩個實例;struct 則相反柿顶。
class 中的變量聲明必須有初始值茄袖,否則會報錯 has no initializer,但如果聲明為
var message = String? 就不會報錯嘁锯。
- segue 是從一個 scene 過渡到另一個 scene 的動作宪祥,segue.identifier 是用來識別不同的 identifier 的,使用 segue 只需 performSegue 并傳入 identifier 來識別要 perform 的是哪個 segue家乘,以及 sender蝗羊。
override func prepare(for segue: UIStoryboardSegue, sender: Any?) 用來在執(zhí)行過渡之前執(zhí)行一些其他的動作,segue.destination as! DestinationViewController 用來指明 segue 的目標(biāo)仁锯,
let destinationVC = segue.destination as! DestinationViewController 即可以把 segue 的目標(biāo) controller(一個 class)實例化為 destinationVC耀找,即可以在過渡前來獲取目標(biāo) class 中的變量并進行修改了。