2013-08-29 52 views
1

在xcode中創建視圖並隱藏它們並在需要時顯示它們是一種很好的做法嗎?創建uiview並將它們呈現在iOs中的最佳實踐

我在問,因爲我更喜歡直觀地創建視圖而不是代碼。

如果視圖複雜(很多子視圖),我應該創建一個新的視圖控制器嗎?

我知道這裏沒有指定的問題,但我真的需要澄清這件事。

問候

+0

那麼這不會在功能上有任何區別。您應該讓自己的應用更加靈活和簡單,取決於您的用戶界面。 – TheTiger

回答

2

我的一個第一iOS應用程序有一個標籤欄和視圖,用戶可以進行切換。最初是通過隱藏和顯示正確的視圖完成的,具體取決於用戶在標籤欄上按下的內容。這最終成爲一場複雜的災難。

然後,我重寫了應用程序,以便每個標籤欄視圖都有自己的視圖UIViewController。事實證明,這樣更容易管理。 (我也使用Interface Builder來直代碼創建的看法改變了,但是這是題外話,您可以繼續,如果你想使用IB)

+0

如果我想在當前的視圖上呈現一個視圖,但尺寸很小,則顯示當前視圖變暗。可以說我在這個小視圖中有一些功能。隱藏和取消隱藏的方法在這種情況下會適用嗎? – Camus

+0

你能幫我解決我最後一個問題嗎? – Camus

+0

我不知道,也許你可以在這種情況下隱藏和取消隱藏。你有嘗試過嗎?如果是這樣,並且它不起作用,那麼我會建議開一個新的問題。 –

0

就我而言,我更喜歡如下因素的做法:

通常情況下,放置視圖的使用情節串聯板,但如果視圖很複雜,我創建一個單獨的XIB文件,排列所有子視圖,然後在故事板中拖動一個UIView子類,並將它與我的XIB視圖連接。它有助於避免在故事板混亂。

至於隱藏視圖,我也不建議這樣的做法,因爲它可能會變得非常複雜,理解您的代碼,所有這些視圖都是在XIB加載時分配的,因此移動開發規則「儘可能地懶惰「沒有得到滿足。我們應該嘗試儘可能減少內存消耗。

0

UIView是創建iOS應用程序的最佳方式,如果你想重用代碼。 例如,如果你有相同的視圖來呈現在iPad n iPhone上,那麼使用UIView可能會導致很多類似的代碼在視圖控制器中 在另一種情況下,如果你的視圖可能需要有多個表視圖,處理每個視圖可能相當複雜與ViewController中的委託。但單獨的觀點將解決這個問題。

我已經在學習如何使用查看後使我的第一個開放的源代碼 https://github.com/bishalg/BGRadioList

我已經從 http://www.raywenderlich.com/1768/uiview-tutorial-for-ios-how-to-make-a-custom-uiview-in-ios-5-a-5-star-rating-view

瞭解了隱藏視圖 - 我用大量的隱藏和顯示視圖代碼在我的應用程序中,但是如果你有很多觀點,相信我一定會變得複雜和難以管理。