1、屬性傳值 前向後傳值。
2、協議傳值
3、block傳值 代替協議**傳值,主要時間點問題。
4、單利傳值 資料共享。
5、通知傳值
通知中心
nsnotificationcenter提供了一種更加解耦的方式。最典型的應用就是任何物件對可以傳送通知到中心,同時任何物件可以監聽中心的通知。
傳送通知的**如下:
[[nsnotificationcenterdefaultcenter]
postnotificationname:@」mynotificationname」
object:broadcasterobject];
註冊接收通知的**如下:
[[nsnotificationcenterdefaultcenter]
addobserver:listenerobject
selector:@selector(receivingmethodonlistener:)
name:@」mynotificationname」
object:nil];
註冊通知的時候可以指定乙個具體的廣播者物件,但這不是必須的。你可能注意到了defaultcenter。實際上這是你在應用中會使用到的唯一的中心。通知會向整個應用開放,因此只有乙個中心。
同時還有乙個nsdistributednotificationcenter。這是用來應用間通訊的。在整個計算機上只有乙個該型別的中心。
優點: 通知的傳送者和接受者都不需要知道對方。可以指定接收通知的具體方法。通知名可以是任何字串。
缺點: 較鍵值觀察需要多點**。在刪掉前必須移除監聽者。不能傳大量數值,只能讓誰去做什麼事。
IOS 傳值方法總結
1 屬性傳值 前向後傳值。就是get,set方法property 2 協議傳值 3 block傳值 代替協議 傳值,主要時間點問題。4 單利傳值 資料共享。5 通知傳值 通知中心 nsnotificationcenter提供了一種更加解耦的方式。最典型的應用就是任何物件對可以傳送通知到中心,同時任何...
iOS傳值方法
傳送方 datacenter thedc datacenter shareddc thedc.username usernametf.text thedc.password passwordtf.text 接收方 nsstring username datacenter shareddc usern...
iOS如何實現傳值 協議傳值
b a 傳值 步驟 1.寫協議 2.新增 屬性 3.呼叫 人 方法 4.給 人新增協議 5.設定 人 6.實現協議方法 例子 secondviewcontroller.h secondviewcontroller.h 協議傳值 created by 薩斯輩的呼喚 on 14 6 13.import ...