2010-11-03 48 views
0

您是否爲每個視圖屏幕創建Viewcontroller?或者你應該共享一個viewcontrollers? (即,在下面的例子中如果有3個控制器或僅有1控制器?)爲每個視圖屏幕創建一個viewcontroller?

屏幕相關

Screen1 (input information), 
Screen2 (Review and confirm Information), 
Screen3 (thank you/status response). 

回答

1

你應該根據MVC範例編碼。將您的代碼分類並根據超額功能將其分開。這是MVC的一個高度概括

(數據)型號:包含所有被傳來傳去,並用於填充觀點

查看您的應用程序數據,對象:一切,這是某種形式的視覺輸出

控制器:使模型和視圖一起工作的類。

這是什麼意思,在iPhone開發的說法是,不只是一堆代碼堵塞你的UIViewController子類。如果你想改變系統的一部分工作方式,那麼擁有一大堆代碼的龐大課程比編輯和修復課程要困難得多,而不是幾個具有專門用途的小型課程。

要回答你的問題,你絕對應該爲每個視圖函數使用一個控制器,但是除此之外,你應該創建專門的類來接受輸入並操作數據,創建專門的類,然後使用數據發送它在輸出中返回給用戶。

不要把所有的代碼放到一個類中。它可能會起作用,但如果你需要調整它,或者就像iPad出來時一樣,它必須適合在另一個平臺上使用,如果你只需要改變一些小的東西就可以更容易地管理它它的工作

+0

lukya的回答給出了很好的可能性。如果您不使用單獨的詳細視圖,則可以使用一個viewController進行輸入並顯示輸出。要考慮的重要事情不是將所有數據處理存儲在viewController中。使用僅處理傳入用戶數據的獨特類。不要在你的viewController裏面做。 viewController可以用來自數據模型的數據進行更新。如果您不得不惹禍於數據模型,那麼如果您不需要通過一百萬行意大利麪代碼 – Justin 2010-11-03 13:12:18

1

在你的情況下,你絕對不需要單獨的控制器。事實上,你甚至不需要單獨的觀點。您可以創建單個視圖來獲取信息,在同一個控制器中處理它並在UIAlertView中顯示結果。

+0

就可以輕鬆完成。沒有viewController中的所有處理方法是很重要的。 – Justin 2010-11-03 13:09:03

相關問題