2010-12-18 99 views
0

我想寫我的第一個iPad應用程序,我有一個問題。iOS桌面視圖和視圖控制器

我有一個按鈕我的主視圖控制器。一旦按下按鈕,它就會從Web服務器請求信息列表,並返回數據。這個數據,我想放入popover的表格視圖中。

我有主視圖控制器,數據被接收回來並放入一個字典,然後通過循環獲得一些數據數組。 我也有一個可以顯示靜態表格視圖的Popover視圖控制器。

我的問題是,我如何從主視圖控制器到Popover視圖控制器獲取數據(字典或數組)?

我真的迷路了。

感謝

詹姆斯

回答

0

嘿,詹姆斯,我建議你先做好功課,並試圖獲得結構在大多數iOS應用程序如何所謂代表工作的滋味。

爲了更清楚起見,您的主視圖控制器將成爲代表,並且您的彈出窗口視圖控制器將成爲此類代理的子項。代表負責展示其子控制器。同時,子控制器負責向其代理控制器請求數據並向其報告任何更改。

因此,通過這種方式,您的popover控制器可以從您的主視圖控制器獲取想要的數據,同時,當用戶想關閉彈窗視圖時,彈窗視圖控制器檢測用戶的指令並通知主視圖控制器解僱它。

1

有兩種設計模式你必須記住:代表團和通知。在更一般的方式中,如果模型改變,KVO也可用於更新視圖。當然,聽取通知或充當委託人的對象是該視圖的控制者,從來不是視圖本身。

在任何時候你都想避免兩件事:將東西存儲在全局變量或單例中,並讓「超級對象」作爲我們說的模型和控制器。堅持使用MVC模式,嘗試將對象耦合起來,並考慮哪個對象擁有哪個對象。這對於內存管理很重要,如果你沒有正確實施它,它會在稍後回來。

從WWDC10會話視頻和會話#123 - WWDC09的iPhone視圖控制器技術檢出會話#116 - 用於iPhone OS的Model-View-Controller。

WWDC10視頻在蘋果開發者網站免費提供。

相關問題