2016-11-14 7 views
0

ビューの1/3を占める水平スクロールビューがあります。私は成功して行っているスクロールビューの中心部にUILabelを入れたいビュースウィフトに一致しないスクロールビュー内にプログラムで垂直方向にUILabelを配置

let reagentsLocationx = mainscrollview.frame.width/2-100 

はしかし、私はscrollview内で垂直にラベルを中央に苦労しています。私が試薬のために同様のコードを使用すると、スクロール・ビュー内ではなく、ビューのラベルが中央に配置されます。

スクロールで、スクロールビューの中でラベルを中央に配置するにはどうすればよいですか?

多くのありがとうございます。

答えて

0

これはフレームと境界を使用しているためです。私はフレームがあなたのスクリーンスペースよりも大きくなるとは思わないが、ビューの実際のサイズに等しい。スクロールビューの高さの境界を基準にしてください。

UIScrollView().contentSize.heightは、あなたが探しているものかもしれません。

+0

私は見つけた別の投稿の境界線を使ってみましたが、喜びはありませんでした。私はもう一度お試しいただき、お返事いただきましてありがとうございます。 – JamieS

+0

私は私に答えました。見てみな。 – Sethmr

+0

私は境界を使ってみましたが、それでもラベルはスクロールビューの垂直中心ではなく、画面の垂直中心に配置されます。 UIScrollView()の提案は時計の後ろにラベルを配置し続けるので、ゼロに等しいと思います。 – JamieS

0

コードのサイズを設定する必要はありません。

すべてがストーリーボードで行われました。

  1. ビューコントローラにスクロールビューをドラッグします。

  2. 親ビューまたは安全領域へのスクロールビューの先頭、下位、先頭および末尾の制約を設定します。

  3. スクロールビューにテキストラベルをドラッグします。
  4. スクロールビューに上下左右の拘束を設定します。
  5. 重要テキストラベルから親ビュー(UIView - スクロールビューではない)または安全領域への2番目の先頭および末尾の制約を設定します。 これはテキストラベルが自分の幅を知っていることを確認し、スクロールビューもそれを認識します。
関連する問題