ContentSize
上のように、縦横240pixelのScrollViewの上に、300*200のViewを置き、その上にいくつかLabelを置いた。そのまま実行させると横だけにスクロールして、隠れている横60pixelも見られる。(ScrollViewに直接置いた「WH240のScrollView」というLabelはスクロールしない)
ContentSizeの値を変えてみる
ContentSizeはスクロールさせる中身の大きさということなので、これをviewDidLoad()内で以下のようにそれぞれ変更した場合はどうか?myScrollView.contentSize = CGSize(width: 250, height: 200)
myScrollView.contentSize = CGSize(width: 500, height: 200)
なぜか何の変化もなく、ちゃんと隠れた横60pixelが表示されたところでスクロールは止まる。
予想では途中までしかスクロールしなかったり、View全体が表示されてもさらにスクロールし続けると思ってたのだが、そうならない。
viewDidAppear()内で設定したところ、期待どおりの動作になった。
これで実際に置かれた中身のコンテンツの大きさに関わらず、スクロール量を調整できるわけだ。
実はコンテンツの一部だけをスクロールさせたかったのに、rootのViewの大きさ分(=画面全体)がスクロールしてしまい、困ってたのだ。
0 件のコメント:
コメントを投稿