IOS 傳值方法總結

2021-06-20 00:06:03 字數 903 閱讀 4549

1、屬性傳值

前向後傳值。(就是get,set方法property)

2、協議傳值

3、block傳值

代替協議**傳值,主要時間點問題。

4、單利傳值

資料共享。

5、通知傳值

通知中心

nsnotificationcenter提供了一種更加解耦的方式。最典型的應用就是任何物件對可以傳送通知到中心,同時任何物件可以監聽中心的通知。

傳送通知的**如下:

[[nsnotificationcenter defaultcenter] 

postnotificationname:@」mynotificationname」 

object:broadcasterobject];

註冊接收通知的**如下:

[[nsnotificationcenter defaultcenter] 

addobserver:listenerobject 

selector:@selector(receivingmethodonlistener:) 

name:@」mynotificationname」 

object:nil];

註冊通知的時候可以指定乙個具體的廣播者物件,但這不是必須的。你可能注意到了defaultcenter 。實際上這是你在應用中會使用到的唯一的中心。通知會向整個應用開放,因此只有乙個中心。

同時還有乙個nsdistributednotificationcenter。這是用來應用間通訊的。在整個計算機上只有乙個該型別的中心。

優點: 通知的傳送者和接受者都不需要知道對方。可以指定接收通知的具體方法。通知名可以是任何字串。

缺點: 較鍵值觀察需要多點**。在刪掉前必須移除監聽者。不能傳大量數值,只能讓誰去做什麼事。

IOS 傳值 總結

1 屬性傳值 前向後傳值。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不同傳值方法的分享

a中要做的事情 第一 匯入b類的標頭檔案,建立b類物件如 addcityviewcontroller cityvc addcityviewcontroller alloc initwithnibname nil bundle nil 或者addcityviewcontroller cityvc ad...