親切すぎるiPhoneアプリ開発の本

画面より大きな領域を表示するには? - 画面矩形の変更対応

Icon comment count 0
Icon stock count 0

3 画面矩形の変更対応

これで実用的なThumbnailViewが手に入ったわけですが、残念な事にiOS Simulatorを横向きにすると、右側の隙間が広すぎることになります。

これには、これまで起こったようなViewController側の-viewDidLayoutSubviewsメソッドでの、self.view矩形に合わせたThumbnailViewの矩形変更だけでは対応できません。

ThumbnailView自身が、自分の矩形の変更に合わせてサムネイル画面を再配置する処理が必要です。

3.1 layoutSubviewsメソッドでの対応

スクロールのタイミングを得るために使っていますが、本来-layoutSubviewsメソッドは、自身が持つ子側のUIViewの位置を再配置する機会を与えるために用意されたメソッドです。

ViewController側のself.viewの矩形が変更されると、その子供であるThumbnailViewの-layoutSubviewsメソッドも再配置する機会を与えるために呼び出されるようになっています。

-layoutSubviewsメソッドで画面の横幅とと内容部の横幅を見張り、値が異なった場合にサムネイル画面を再配置するようにしてみましょう。

↓ サムネイル画面の再配置
↓ ViewController.swift サンプル:26/Thumbnail-07
class ViewControlle

出典情報

Medium

親切すぎるiPhoneアプリ開発の本

  • 著者: 國居 貴浩

コメント

    コメントはありません