SwiftUI - 屬性包裝器記錄

屬性包裝器: -? 屬性(簡(jiǎn)單值或者對(duì)象)更改后,按照規(guī)則,跟屬性綁定的UI都會(huì)重新渲染评肆,

@State 修飾簡(jiǎn)單的值,只適合于struct非区,當(dāng)然這個(gè)struct可以是常用的Double, Int, String等類型瓜挽,單個(gè)視圖的局部更新。

@Binding 雙向傳值征绸,當(dāng)前視圖和所有子視圖共享數(shù)據(jù)久橙,

當(dāng)前視圖修改值,會(huì)通過Binding通知所有子視圖進(jìn)行局部刷新管怠。

任何一個(gè)子視圖修改值淆衷,也會(huì)通過Binding傳遞到父視圖進(jìn)行局部刷新。


***@StateObject和@ObservedObject都是用來包裝實(shí)現(xiàn)了ObservableObject協(xié)議的屬性渤弛,唯一的區(qū)別就是該屬性的生命周期的管理問題祝拯。***

@StateObject? 修飾對(duì)象,當(dāng)前視圖和所有子視圖共享數(shù)據(jù)她肯,監(jiān)聽數(shù)據(jù)的所有視圖局部刷新佳头,生命周期由View管理,只初始化一次晴氨,View銷毀它就銷毀

@ObservedObject 修飾對(duì)象康嘉,當(dāng)前視圖和所有子視圖共享數(shù)據(jù),監(jiān)聽數(shù)據(jù)的所有視圖局部刷新籽前,生命周期由我們手動(dòng)管理亭珍,通常由父?jìng)鹘o子,可能會(huì)隨時(shí)釋放枝哄。并且需要遵循 ObservableObject協(xié)議,因?yàn)镺bservableObject繼承與AnyObject肄梨,所以只有class才有資格遵守該協(xié)議,比如 class User: ObservableObject { }//協(xié)議是空協(xié)議膘格,沒有任何必須實(shí)現(xiàn)

************ 上面2種修飾 比如 A顯示B峭范,B顯示C,C顯示D瘪贱,

那么A修飾了屬性property纱控,如果D想使用此屬性辆毡,那么需要A傳遞B,B傳遞C甜害,C傳遞D舶掖,可以共享********


@EnvironmentObject 修飾對(duì)象,將對(duì)象放在環(huán)境中尔店,當(dāng)前視圖和所有子視圖共享數(shù)據(jù)眨攘,監(jiān)聽數(shù)據(jù)的所有視圖局部刷新。

************ 上面1種修飾 比如 A顯示B嚣州,B顯示C鲫售,C顯示D,

那么A修飾了屬性property该肴,B和C不關(guān)心屬性情竹,只有D需要該屬性,那么就用此修飾匀哄,可以直接在D取該屬性********

@Environment 修飾對(duì)象秦效,全局屬性,系統(tǒng)屬性涎嚼,可以隨時(shí)取阱州,可以通過擴(kuò)展自定義整個(gè)工程的全局字典屬性。

簡(jiǎn)單舉例法梯,取日歷:@Environment(\.calendar) var calendar: Calendar


exp.


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末苔货,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子立哑,更是在濱河造成了極大的恐慌蒲赂,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,036評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件刁憋,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡木蹬,警方通過查閱死者的電腦和手機(jī)至耻,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來镊叁,“玉大人尘颓,你說我怎么就攤上這事』奁” “怎么了疤苹?”我有些...
    開封第一講書人閱讀 164,411評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長敛腌。 經(jīng)常有香客問我卧土,道長惫皱,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,622評(píng)論 1 293
  • 正文 為了忘掉前任尤莺,我火速辦了婚禮旅敷,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘颤霎。我一直安慰自己媳谁,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,661評(píng)論 6 392
  • 文/花漫 我一把揭開白布友酱。 她就那樣靜靜地躺著晴音,像睡著了一般。 火紅的嫁衣襯著肌膚如雪缔杉。 梳的紋絲不亂的頭發(fā)上锤躁,一...
    開封第一講書人閱讀 51,521評(píng)論 1 304
  • 那天,我揣著相機(jī)與錄音壮吩,去河邊找鬼进苍。 笑死,一個(gè)胖子當(dāng)著我的面吹牛鸭叙,可吹牛的內(nèi)容都是我干的觉啊。 我是一名探鬼主播,決...
    沈念sama閱讀 40,288評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼沈贝,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼杠人!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起宋下,我...
    開封第一講書人閱讀 39,200評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤嗡善,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后学歧,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體罩引,經(jīng)...
    沈念sama閱讀 45,644評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,837評(píng)論 3 336
  • 正文 我和宋清朗相戀三年枝笨,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了袁铐。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,953評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡横浑,死狀恐怖剔桨,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情徙融,我是刑警寧澤洒缀,帶...
    沈念sama閱讀 35,673評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響树绩,放射性物質(zhì)發(fā)生泄漏萨脑。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,281評(píng)論 3 329
  • 文/蒙蒙 一葱峡、第九天 我趴在偏房一處隱蔽的房頂上張望砚哗。 院中可真熱鬧,春花似錦砰奕、人聲如沸蛛芥。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽仅淑。三九已至,卻和暖如春胸哥,著一層夾襖步出監(jiān)牢的瞬間涯竟,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評(píng)論 1 269
  • 我被黑心中介騙來泰國打工空厌, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留庐船,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,119評(píng)論 3 370
  • 正文 我出身青樓嘲更,卻偏偏與公主長得像筐钟,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子赋朦,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,901評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容