2010-08-01 77 views
0

我希望我的視圖控制器根據取決於某些運行時檢查的條件(可以說是偶數小時的uiwebview和奇數小時的形式)顯示不同的視圖。 在iphone項目中實現它的最佳模式是什麼?也許我可以隱藏基於上述條件的控件,或者加載不同的視圖更好? 或者我應該加載不同的視圖控制器,並在我的父視圖控制器中進行檢查?基於視圖控制器中檢查的條件顯示不同視圖

回答

0

iPhone用戶界面非常小且擁擠,您通常最好爲不同的用戶界面創建不同的視圖/視圖 - 控制器對。隱藏用戶界面元素會留下非常明顯的空隙,並且在運行中手動重新排列用戶界面元素是一種痛苦。

更重要的是,不同的視圖向用戶傳達應用程序處於不同的狀態。您不希望應用在不通知用戶的情況下切換到其他狀態。他們很難理解正在發生的事情,而不會將其與UI輕微混淆。

這是非常糟糕的UI設計有相同的用戶行爲提出了一個不同的用戶界面無法識別的用戶界面。例如,呈現「在偶數小時的uiwebview和在奇數小時的形式」將是非常糟糕的主意,因爲用戶不知道爲什麼點擊特定按鈕有時會讓他們在其他時間看到web視圖和表單視圖。你希望用戶在點擊之前檢查時鐘,以便他們知道期望什麼?

如果由於某些原因某些UI元素不可用,例如沒有網絡訪問,那麼更好的UI設計將元素呈現爲禁用而不是消失。界面語法教導用戶灰色控件暫時不可用。這是一個不斷變化的用戶界面的混亂。

+0

這是一個明智的提示。 如果我決定爲每個屏幕使用單獨的視圖控制器/視圖對,如何管理切換邏輯?我必須使用某種導航控制器在視圖之間切換嗎?對不起,我是可可觸摸世界的小菜鳥:/ – adrin 2010-08-01 13:56:26

+0

導航控制器最容易使用,您不必實際顯示它。換出不同的視圖只需對你的狀態進行測試,然後將當前狀態的特定視圖壓入導航控制器的堆棧。 – TechZen 2010-08-01 14:33:45

相關問題