1
我在這裏進行的是顯示搜索結果列表的頁面。當您點擊搜索按鈕時,它會打開一個模式窗口,您可以在其中更改搜索條件。當你點擊完成時,它會調用模態窗口上的updateSearch方法,該窗口又應該調用父窗口上的updateSearch。我得到的錯誤是從模態窗口調用父視圖控制器的方法時出錯
Receiver type 'ehrxCMView' for instance message does not declare a method with selector 'updateSearch'
這是對父視圖 - 控制
- (void)updateSearch
{
}
這裏的方法我的模態窗口方法
- (IBAction)updateSearch:(id)sender
{
ehrxCMView *parent = (ehrxCMView*)self.parentViewController;
parent.selectedOptions = self.selectedOptions;
[parent updateSearch];
[self dismissModalViewControllerAnimated:YES];
}
我一個在這裏想到的是模態窗口是在一個導航控制器,所以我想也許我需要經歷,然後到父控制器?
好的建議。在更抽象的層面上,'self.parentViewController'顯然不是Jhorra認爲它的價值。當調試這樣的問題時,找出計算機認爲正在發生的事情總是一個好主意,然後確定它與你想象中的不同之處。 – Olie 2012-03-21 17:24:39
感謝您的建議,我仍然對此感到陌生。你能指點我更多關於如何將控制器設置爲代表的信息嗎?我理解這個概念,但我對IOS還不夠熟悉。 – Jhorra 2012-03-21 17:37:07
看看Cocoa基礎知識指南,其中有關於代表的部分。 https://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/CocoaFundamentals/CommunicatingWithObjects/CommunicateWithObjects.html#//apple_ref/doc/uid/TP40002974-CH7-SW18 – bandejapaisa 2012-03-21 17:46:04