2011-10-11 110 views
1

我知道那裏有類似的問題,但請在將其作爲副本書寫之前考慮我的問題。如何從UIView訪問UIViewController的按鈕?

我有一個真/假的視圖控制器從用戶輸入接收並用於調整按鈕的選定狀態,然後將真/假數據傳遞給運行方法的UIView。一旦方法完成,我想返回按鈕的選定狀態返回到NO,但是當我試圖告訴UIView訪問ViewControllers按鈕我遇到一些問題。

有人可以告訴我我該怎麼做,如果不可能,可以概述我偏離MVC模式的位置以及我如何恢復正常運行?

+0

總之,你是否想要從UIView發回消息回它的父母UIViewController? – Luke

+0

如果你知道那裏有重複的問題,你爲什麼問這個問題?在閱讀了關於欺騙的答案之後,你還不明白什麼?請具體說明。 – Caleb

+0

我正在尋找更改視圖控制器擁有的按鈕的選定狀態。我問這個問題是因爲我不確定其他答案如何適用於我的問題。 –

回答

3

我會使用NSNotification。如果這對你來說全新的話,那麼比代表團更容易掌握。

寄存器這樣的事情在你的父視圖控制器:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(methodToChangeButtonState) name:@"changeButtonState" object:nil]; 

,並在適當的時候從孩子的ViewController稱之爲:

[[NSNotificationCenter defaultCenter] postNotificationName:@"changeButtonState" object:nil]; 

你methodToChangeButtonState將火時通知發佈更新你的按鈕狀態。

+0

記得取消註冊時不再需要,並設置爲零等(很高興它幫助) –

+0

我尋找同樣的事情!我用通知!它爲我工作! – kiran

相關問題