2012-09-17 85 views
0

我在我的應用程序中有兩個類,GHHaikuNSObject的一個子類)和GHViewController,其中導入了GHHaiku。在GHViewController我實例化GHHaiku像這樣:如何在視圖控制器導入的類中引用視圖控制器?

@property (nonatomic, strong) GHHaiku *ghhaiku; 

所以,當我需要調用從GHHaiku的方法在GHViewController,我可以做[self.ghhaiku callThisMethod];

不過,我想不出做什麼,如果GHHaiku需要信息從GHViewController。例如,在GHViewController中有UISegmentedControl,並且GHHaiku中有一個方法需要知道UISegmentedControl的哪個段已被選擇。我如何獲得這些信息?我想我可以在GHHaiku中創建一個int屬性,然後在GHViewController中爲該屬性分配UISegmentedControl的值,但這看起來很麻煩,我無法想象沒有更好的方法來完成它。

那我該怎麼辦?

(我懷疑Refer to a main view controller property by another class可能會回答我的問題,但我不是很夠先進的瞭解給出了答案。)

回答

1

這是可以從中受益想想separation of concerns,更明確地打破下來的建築問題大致沿着MVC(模型/視圖/控制器)線。有關可可的MVC能力,請參閱this

GHHaiku模型對象?如果是這樣,那麼它不應該真正「知道」視圖層中正在發生的事情。

+0

哦,我的天啊,那應該是顯而易見的!我一直很關注那些我忘了MVC的小細節......謝謝! –

+0

不用擔心。很多我自己的謎團可以追溯到在一個足夠早的階段不完全思考這些架構問題。 – FluffulousChimp

相關問題