2013-10-24 33 views
9

我有一個相當複雜的UIView,它包含幾個根據各種響應顯示的嵌套視圖 - 所有這些視圖都在故事板中進行佈置。Xcode - 嵌套故事板視圖 - 隱藏/顯示?

有沒有辦法隱藏前景中的視圖來處理背景中的視圖?因爲它真的很挑剔選擇特定的元素來安排/風格!?

+1

我試圖弄清楚如何在這種情況下做的。你有什麼好主意嗎? – 7usam

+1

我很希望故事板上有一個明顯的複選框,使我們更容易工作 – mihai

回答

3

我一直在試圖弄清楚一個很好的方法來做到這一點,一些功能喜歡從故事板(而不是實際的應用程序)隱藏視圖和子視圖,但找不到任何東西。

這不是辦法的最好的,但它是我如何做到這一點的那一刻...

我要做的就是選擇我想「隱藏」從文檔大綱的意見,並添加一個常數(屏幕寬度/高度)值設置爲其x/y原點值,以將它們推出屏幕。我還將這些視圖(Identity Inspector> Document> Label)的文檔標籤更改爲「隱藏」之類的內容,以便稍後可以從文檔大綱中搜索「隱藏」視圖,並將它們放回其所屬的位置。

+0

hi @ 7usam - 是的,這是唯一的解決方法,我可以找到 - 也在想 - '肯定我在這裏失去了一些東西 - 必須有一種方法來隱藏/ select'但我發現了!乾杯 – Dancer

1

也許這可以幫助你:

  • 在Finder中打開你的故事板,並用簡單的文本編輯器(不是Xcode的)編輯它。 您將看到它只是一個xml文件。查找要隱藏的視圖,並在參數列表中添加hidden =「YES」。 這就是我在我自己的項目上所做的。

  • 在Xcode中,當您選擇故事板時,您將看到一個顯示所有視圖控制器及其層次結構的面板。如果您更改元素的順序,則可以更改背景/前景順序。

3

我有2個解決方法。

A)將視圖控制器大小更改爲自由格式。將其尺寸設置得非常大,以便我可以將視圖分隔開。 B)使用視圖文檔大綱(最低在最前面)的排序順序,並在第一個視圖下添加圖像視圖(與視圖背景相同)以阻止其他視圖。然後在完成我的編輯後刪除它。

或xcode開發人員可以簡單地添加一個設計可見的複選框的意見和控制....但生病把我的咆哮別的地方。

0

您可以添加額外的意見,現場對接。

enter image description here

這些觀點得到與視圖控制器一起發起的,但不添加到視圖控制器的視圖層次。您可以使用IBOutlets來引用它們。

例如我有一個全屏加載視圖,我將其添加到場景底座,而不是覆蓋故事板中的視圖控制器。我可以添加加載視圖視圖控制器的視圖層次代碼:

@IBOutlet weak var loadingView: UIView! 

... 

loadingView.frame = view.bounds 
loadingView.autoresizingMask = UIViewAutoresizing.FlexibleWidth.union(UIViewAutoresizing.FlexibleHeight) 
view.addSubview(loadingView) 

參考:https://developer.apple.com/library/ios/recipes/xcode_help-IB_storyboard/Chapters/AddViewsToDock.html