Re: [問題] Obj-C中的delegate如何運作?

看板MacDev作者 (Loafer是了好)時間16年前 (2009/05/31 11:05), 編輯推噓2(206)
留言8則, 3人參與, 最新討論串5/6 (看更多)
※ 引述《offname (Loafer是了好)》之銘言: : ※ 發信站: 批踢踢實業坊(ptt.cc) : ◆ From: 61.62.94.242 : 推 leondemon:有懂delegate的用意 不過還是不太懂整體是怎麼運作的 XD 05/31 02:37 : → leondemon:如果我需要一個helper object那我要在Xcode和IB中做哪些 05/31 02:38 : → leondemon:設定 才能讓原本的instance去delegate別的物件? 05/31 02:38 : → leondemon:不太懂IB(interface builder)中 何時要connect delegate 05/31 02:39 : → leondemon:而且delegate的connection似乎只能單方面設定? 05/31 02:40 把出現在IB,可以拉的東西 我們來分為兩個部分好了 一個是系統的,一個是自己寫的 自已寫的就要出現, IBOutlet或是IBAction在IB才可以看得到 自己定義的ivar或是action的身影 在MVC的架構下 Control對View,假設是MyViewController和MyView.xib 先把MyViewController裡的IBOutlet拉到MyView.xib上的元件 表示Control 要控制 View裡的東西 再來就是View裡的元件如果有event會發生的話,比如touchup inside 把那個event 拉到MyViewController裡的IBAction 表示View的event要發生的時候要回報給control然後去發生那個action 這樣想比較簡單 不知道有沒有回答您心中的問題 : → zonble:不過,ObjC 裡頭的 delegate 通常不是這樣用…。 05/31 04:02 : → zonble:這樣比較像是成員變數的 getter setter 耶…。 05/31 04:03 : → zonble:因為 ObjC 的 delegate 通常只會放一個外部的指標 05/31 04:08 : → zonble:比較不會是在 Class 裡頭生物件 05/31 04:09 : → zonble:http://en.wikipedia.org/wiki/Delegation_pattern 05/31 04:09 Z大說的是啦,我是覺得delegate意思範圍比較廣一點 從英雄到真正objective-c的實作方法 都算是一種delegate -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.4.234

06/02 16:48, , 1F
ㄜ...可是delegate不是自己創造的 所以我不知道什麼時候
06/02 16:48, 1F

06/02 16:49, , 2F
要拉delegate與control物件做連接
06/02 16:49, 2F

06/02 17:58, , 3F
delegate通常是用在protocol中,也就是"協同數個object
06/02 17:58, 3F

06/02 17:59, , 4F
合作",除非你自己要設計protocol,不然就用內建的那些
06/02 17:59, 4F

06/02 17:59, , 5F
就好
06/02 17:59, 5F

06/02 18:29, , 6F
leondemon是在IB看到一個叫delegate,拉了之後沒反應嗎?
06/02 18:29, 6F

06/02 22:43, , 7F
有反應阿 只是不知道什麼時候要拉 為什麼而拉 誰拉給誰
06/02 22:43, 7F

06/02 22:43, , 8F
因為不是很懂 所以才問囉 :)
06/02 22:43, 8F
文章代碼(AID): #1A8VGF4J (MacDev)
討論串 (同標題文章)
文章代碼(AID): #1A8VGF4J (MacDev)