2017-01-24 5 views
2

次の階層を持つUIScrollViewを含むビューコントローラがあります。UIStoryboard内のUIScrollViewのサブビューに制約を追加する奇妙な動作

- UIView -- UIScrollView ---- UIImageView ---- UIButton ....

UIScrollViewのサブビューを制約すると、右のアライメントが正しくありません。

Imgur

マイUIScrollView制約:
enter image description here

UIButton制約末尾の制約
私はまず
を試してみた何 enter image description here

を作成した後、私はそれだけだと思いましたストーリーボードではないView Controllerを適切にレンダリングします。 Xcodeを再起動してコンピュータを再起動すると、問題は解決しません。

含まれているビューコントローラでAdjusts Scroll View Insetsプロパティを設定しても効果はありません。

答えて

1

スクロールビューは、コンテンツを水平方向と垂直方向にスクロールさせるため、少しトリッキーです。

これについて考えると、スクロールビューでコンテンツの幅を知る方法はありません。設定する必要があります。だからこそあなたのボタンはどこにあるのでしょうか。

ビューを垂直方向にのみスクロールするには、コンテンツの幅をスクロールビューの幅(より正確にはスクロールビューの親の幅)に設定する必要があります。

これを達成する通常の方法は、独自のスクロールビューをサブビューしてコンテンツビューとして使用することです。 したがって、スクロールビューにUIViewを追加し、スクロールビューを塗りつぶすように制約を追加します(つまり、上端、先頭、末尾および下端の間隔= 0)。 次に、最も重要な制約:コンテンツビューの幅がスクロールビューの親の幅と同じになるように幅の制約を追加してください(おそらくあなたのviewControllerのビューです)。

これですべてのコンテンツを追加できますコンテンツビューにしたい。(あなたのコンテンツビューが上から下に固定され、高さや制約のいずれか、あまりにも高さを持っている必要があります)

ScrollView Setup

+0

おかげで、それは私を得た横スクロールでした! – Ollie

関連する問題