iOS 頁面(代理、通知、block、單例、屬性)傳值

一、傳值分類

頁面?zhèn)髦祷痉譃閮煞N:正向傳值和反向傳值。

二、傳值方式

傳值,最基本的無非就是代理傳值、通知傳值、block傳值等,還有大家經(jīng)常用到的屬性傳值和單例傳值、存儲傳值等。

1、代理傳值

代理傳值,簡單明了、淺顯易懂,實際開發(fā)中也常用。

委托做的事情:

聲明委托變量

定義協(xié)議方法

調(diào)用委托協(xié)議

代理需要做的事情:

執(zhí)行代理協(xié)議

實現(xiàn)委托方法

2、通知傳值

通知的用法很簡單,通知人創(chuàng)建通知并發(fā)送,接收人接受通知就OK了,通知完畢注意移除掉通知,醒目中通知太多并不好(接受的二手項目通知就泛濫成zai了)

最后大家一定不要忘了把通知移除掉,最好在dealloc方法中移除。以免給大家造成不必要的麻煩。只有把代碼寫到最嚴謹才能把bug降到最低。移除通知一般遵循誰創(chuàng)建誰移除。在哪個控制創(chuàng)建就在哪個控制器里移除。

3、block傳值

聲明 block 屬性用于傳值

傳值的時候調(diào)用block 完成傳值

接受方:

傳值一個block 給傳值方,并在block內(nèi)捕獲回調(diào)值信息

4、屬性傳值

屬性傳值是最常用到的,不會用的,基本上可以告別IT圈了。

5、單例傳值

單例顧名思義就是單獨一個實例,相當于一個通用變量在整個工程中可以用作公共資源使用。單例分為系統(tǒng)單例和自定義單例。

6、數(shù)據(jù)持久化傳值

NSUserDefaults是數(shù)據(jù)持久化的一種主要做存儲使用。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容