2009-12-07 93 views
0

我很好奇什麼是最好的方法來管理通過幾個視圖的遍歷,而無需使用導航欄來燒屏幕空間。iPhone:多視圖(屏幕)管理?

舉個例子,假設我有四個UIView的與相關UIViewController的:

 
1: Top level menu (invokes A or B.1) 
1.A: Menu selection A (return to 1) 
1.B.1: Menu selection B, part 1 (invokes B.2) 
1.B.2: Menu selection B, part 2 (return to A) 

首先,我不能確定,如果導航控制器,當我不使用導航欄是合適的。作爲替代方案,我正在考慮實施一個自定義UIViewController,其中包含視圖控制器並充當屏幕管理器。

的思考?

回答

1

您可以隨時隱藏使用setNavigationBarHidden:animated:

除此之外,它取決於你正在建設什麼類型的應用程序的導航欄。你的聽起來像是可以使用Tab Bar的東西,儘管這並不能解決你佔用屏幕空間的問題。

XCode的模板提供了另一種方法 - 嘗試查看一個新的項目,這是一個「實用程序」應用程序。它展示瞭如何在幾個不同的屏幕之間無縫切換。

+0

我結束了與UINavigationController。 在我的應用程序的設置中,所有視圖都從xibs中加載,其中每個xibs都有一個UIView中的背景圖像和覆蓋的各種其他元素。我禁用了狀態欄(並隱藏了導航欄),並且我看到一個奇怪的問題,即我的背景圖像在y軸上偏移了10px,但是IB中添加的所有其他元素似乎都已就位。我已經通過編寫一個包裝來糾正每個視圖控制器,因爲它被推到導航控制器上。有什麼我做錯了嗎? – 2009-12-09 03:00:37

+0

實驗與[UIScreen mainScreen] .applicationFrame – bpapa 2009-12-09 05:27:17

+0

嗯,我比較[UIScreen mainScreen] .applicationFrame到UINavigationController.view.frame並且它們是相同的(0,0,320,480)。任何其他地方我可以看看? – 2009-12-14 05:58:43