我認爲標題是自我解釋。 我有一個UIPopOverController,它是一個tableview,當我選擇一個單元格時,我想告訴它UIViewController。如何告訴UIViewController在UIPopOverController中按下了一個按鈕?
有沒有簡單的解決方案或我需要KeyValueObserving或通知?
我認爲標題是自我解釋。 我有一個UIPopOverController,它是一個tableview,當我選擇一個單元格時,我想告訴它UIViewController。如何告訴UIViewController在UIPopOverController中按下了一個按鈕?
有沒有簡單的解決方案或我需要KeyValueObserving或通知?
從tableview發佈一個NSNotification並添加UIViewController作爲觀察者。
根據您的選擇,您可以使用兩種方法之一移動。
第一個:使用委託/協議。 http://www.thepensiveprogrammer.com/2010/05/objective-c-protocols-and-delegates.html
second:將您的UIViewController設置爲您的UIButton的目標。
例如
[btn addTarget:myController action:@selector(ActionWillBePerformedInController:) forControlEvents:UIControlEventTouchUpInside];
過帳NSNotification將工作做好......你還可以創建一個在您的UITableViewController類的回調對象和選擇。
,你可以用一個回調對象,回調選擇
initWithTarget:(id)theTarget andSelector:(SEL) theSelector
初始化的UITableViewController ...的值保存關閉到您的tableView屬性
從didSelectRowAtIndexPath方法然後......調用
[self.target performSelector:self.selector];
使用此方法,您可以根據需要定義自己的回調方法..從創建彈出窗口的ViewController類中,你可以做這樣的事情...
[[MyTableView alloc] initWithTarget:(self) andSelector:@selector(popoverControllerDidRequestClose)];
認爲這是最簡單的方法。 – madmax 2011-04-27 21:37:15