2013-06-12 182 views
4

我正在使用故事板&自動佈局。我在UIScrollView中有一個容器視圖。容器視圖允許我在故事板中佈置一個長(320,1000)的視圖。我將UIScrollView的內容大小設置爲(320,1000)。
我寄託在ContainerView到了滾動以下限制:
寬度等於:320
高度等於:1000
頂層空間到:上海華
居中X到:上海華iOS滾動視圖,容器視圖 - 自動佈局問題

的Xcode上添加堅持額外的約束。它增加了一個底部空間:Superview等於:-432。它不會讓我刪除這個約束!我不確定這是否會影響下面的問題。

一切正常的4" 個細我的iPhone 5的屏幕模擬器。
我的問題是當我測試3.5" 的屏幕在模擬器&我的iPhone4S。滾動內容大小限制爲(320,568),丟失了我的ContainerView的底部部分。

有人可以幫助我瞭解爲什麼這不會對工作,3.5" 屏幕?

回答

12

收到了來自蘋果的技術支持問題的答案。它仍然給了我在Xcode中的錯誤,但它在3.5" 功能屏幕現在。 這裏的答案:

我不知道爲什麼Interface Builder的決定有關的容器視圖滾動視圖的內容視圖減去432的底部的底部,因爲它是必要的,您無法刪除此約束佈局要完全定義[1]。但是,如果將該約束提升爲用戶約束,則可以將該常量值編輯爲零。這將更正您的內容的底部被切斷的問題。
在Interface Builder:
1)選擇容器視圖
2)切換到尺寸檢查
3)點擊旁邊的齒輪圖標「底部空間到:上海華;等於:-432.0」約束。
4)從菜單中選擇選擇和編輯。
5)在常量字段中輸入一個零值。

[1]:詳細信息請參閱技術說明2154的深入解釋部分。 https://developer.apple.com/library/ios/#technotes/tn2154/_index.html#//apple_ref/doc/uid/DTS40013309

+4

斯科特的真棒答案似乎不適用於Xcode 5,我將如何解決這個在Xcode 5? –

0

在InterfaceBuilder中將視圖嵌入到UIScrollView中時,會自動設置一個約束。如果您的視圖比縱向的屏幕「長」,它將不會滾動。 但是,如果你旋轉屏幕,你會注意到滾動一點的能力。 要讓UIScrollView在AutoLayout中查看你的約束。 找到「垂直空間 - 滾動視圖 - 視圖」並將其從「常量」設置爲「自動」 - 爲我修復了一切。