2011-09-26 75 views
0

我的申請是用於學習。它將有三個屏幕,一個用於學習(閱讀),一個用於評論,另一個用作主菜單(用於管理文檔和選擇學習或評論)。主菜單將是應用程序加載時的第一個屏幕。實施多視圖控制器的策略

我試圖決定最佳的方法,關於我需要什麼視圖控制器和視圖。

方法答: (4×視圖控制器 - 根,菜單,學習,綜述)

這種方法具有與無屏幕上控制一個根視圖控制器。它將始終包含一個其他視圖控制器作爲子視圖。出於某種原因,我被這種方法所吸引,但我沒有看到其他例子,所以也許我很愚蠢。我想知道這是否有內在錯誤的原因。

方法B: (3×視圖控制器 - 根(菜單),學習,綜述)

在該方法中菜單是根控制器和在菜單中的子視圖的其它控制器的負載。我認爲這更像是一種標準的做事方式。

我希望聽到有關哪種方法最好的想法。我是軟件開發的新手。我已經完成了一些關於iOS軟件開發的書籍,並搞砸了一些,現在我開始了我的第一個iPad應用程序。

回答

1

無論何時您決定如何佈局您的視圖和控制器,它們通常基於應用程序流程(從最終用戶的角度來看)。所以從你原來的問題我不確定我是否完全理解流程 - 用戶被迫在主菜單啓動,然後從那裏可以切換兩個互斥的視圖(研究&評論)?如果是這樣的話,我會建議使用一個標籤欄控制器來進行'學習'和'審查'視圖,因爲它允許保存視圖的狀態並在它們之間切換,而不需要做任何額外的工作(來自你所描述的方法聽起來像你主要是自己重新創建這種行爲)。那麼,對於主菜單(我假設在應用程序第一次啓動時顯示)?您可以簡單地以模態方式打開它(請注意,您不必爲開口設置動畫,因此它可以立即出現而不是從底部向上滑動,用戶永遠不會明智)。用戶在主菜單中選擇需要選擇的內容後,關閉模式視圖,然後準備好使用2-tab控制器。

+0

感謝您的回覆!我不太瞭解模態視圖,所以我現在將詳細閱讀。至於你的問題: – Simple99

+0

(對不起,我剛碰到rtn)。至於你的問題:我不認爲用戶會在研究和評論頁之間切換太多......評論部分基本上是閃卡,用戶在學習的同時創建 - 他們在學習時不會審查他們的時間。主菜單不一定是第一個屏幕...我希望應用程序能夠在上次使用的屏幕上恢復。 – Simple99