我相信這是非常基本的,但我一直無法找到任何有關它。設置代理
我有一個viewController女巫有一個模式segue到一個導航控制器與一堆表單工作表viewControllers。像這樣:
的viewController A ---(模態賽格瑞)---> navigationController --->的viewController乙--->的viewControllerÇ
在CI的viewController取得委託,像這樣:
@protocol ViewControllerCDelegate <NSObject>
- (void)myMehtod;
@end
@interface ViewControllerC : UIViewController
@property (nonatomic, assign) id <ViewControllerCDelegate> myDelegate;
(我已經合成myDelegate)
我想設置myDelegate是A.的viewController我的問題是,在這裏?我該怎麼辦?
我試圖以這一個的viewController的viewDidLoad中:
ViewControllerC *delegateController = [self.storyboard instantiateViewControllerWithIdentifier:@"ViewControllerC"];
delegateController.myDelegate = self;
但委託不出現才能完成設置。想法?
你確定'delegateController'實際上正在被實例化嗎?你是否堅持在某個地方的參考? – 2013-03-21 18:04:22
您確定您在上述代碼段中引用的ViewControllerC實例是最終實際使用的嗎?也就是說,你沒有在別處實例化相同的視圖控制器? – 2013-03-21 18:07:36
您應該在ViewControllerC出現時設置委託,而不是在ViewControllerA出現時進行設置。而且你不需要綜合myDelegate。 – AMayes 2013-03-21 18:08:35