2009-07-13 49 views
1

我有一個視圖控制器,我想在它上面託管一個UITabBar。當用戶點擊不同的標籤項目時,我想顯示不同的視圖。我有這個工作,但很難維護。Interface Builder中的UITabBar - 太髒了?

InterfaceBuilder下,我只是創建了所有選項卡視圖,隱藏起來。在我的項目中,當用戶點擊其中一個標籤項目時,我只需將鏈接視圖的隱藏屬性設置爲false,以便它顯示。

的廈門國際銀行看起來像一場災難,但因爲我有分層彼此的頂部約4次。爲了方便起見,我在InterfaceBuilder中爲視圖設置了隱藏屬性爲true,希望它能完全隱藏一些視圖,以便更容易地看到我在做什麼。但是,InterfaceBuilder只是將視圖的不透明度更改爲30%,因此您仍然可以看到它們全部層疊在一起。

我想知道是否有更好的方法來做到這一點。如果可能的話,我不想以編程方式爲此UI生成所有視圖。

感謝

回答

4

UITabBar真的應該爲你的界面「根」容器,然後它應該包含導航控制器和/或意見。

我發現當UI本身變得難以在界面生成器中處理時,最好的辦法是切換到Nib窗口中的大綱視圖(使用「視圖模式」工具欄項),並訪問筆尖窗口的層次結構。

+0

+1大綱視圖是最接近處理複雜性擴展的IB。 作爲替代方案,如果你碰巧有有很多的極其複雜的用戶界面和豐富的動態* *的內容,我建議你考慮Three20其TTStyledText和TTStyleSheet機制。 – 2010-01-31 16:55:31

0

我一般不喜歡一個榫文件中創建的,正是因爲它變成東西怎麼弄凌亂,如何容易在不經意間點擊並拖動東西你不打算對各種隱藏視圖。

我會做什麼,而不是在那種情況下是打出來的隱藏視圖到單獨的筆尖,並有控制器負載並將它們放入視圖的需要的基礎上。這種方法的另一個好處是隻有在需要時才加載視圖 - 從整體上使視圖更輕。

0

我有同樣的問題,但使用的隱藏複選框,我去我想「隱藏」控件的大小檢查,然後只放了99 X值之前。這將它從屏幕上移開,很容易通過刪除99將其移回原始位置。不理想,但它可以工作......只要記住在完成時將它們移回原處。