*

UICollectionViewが画面回転した時にレイアウトが崩れた時の対応

公開日: : 最終更新日:2014/02/24 Tips , , ,

UICollectionViewCellのサイズを、内容に合わせて動的に変えた時に起こる問題に関しての記事。

ある程度サイズが決まっているならサイズに合わせたプロトタイプを作ればいいし、必要であればUIScrollViewを使えばサイズの動的変更は必要ないといえばないので、いささか行儀が悪い話ではあるかもしれないが、UICollectionViewCellのサイズを動的に変えて対応したい需要(中身のコンテンツの量が不定で、かつスクロールなしで表示したい場合など)はないではない。
しかしその場合に画面を回転させると、動的に変えたサイズがどうやらセルのプロトタイプの初期値に戻るように縮小されてしまう。
調べたところ、回転時にcollectionViewの空更新で対応するとよいとのことで、以下のようなコードが紹介されていた。
組み込んだところ、確かに回転してもCollectionViewのセルのサイズが変更されなくなった。

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation{
    [self.collectionView performBatchUpdates:nil completion:nil];
}

参照サイト:
stackoverflow
http://stackoverflow.com/questions/13556554/change-uicollectionviewcell-size-on-different-device-orientations

関連記事

viewDidLoadとviewDidLayoutSubviewsのタイミング

真実の記事にある「コードでiPhone6を識別する」話とほんのちょっとだけ繋がっている話で、view

記事を読む

iPad用storyboard⇔iPhone用Storyboardへの変換

iPad用アプリとしてiPad用前提のstoryboardから、iPhone対応にするにあたり、si

記事を読む

iOS7の青色

iOS7の標準UIで使われている、水色に近い青の色についての記事です。 あの色には特に名前を決まっ

記事を読む

Xcode8で余計なログを抑制する

Xcode8に更新してから、妙にログが増えたので、NSLogで明示したのと実行時エラー以外のログを吐

記事を読む

UICollectionViewのヘッダとフッタの設定

UICollectionViewで慣れないのがヘッダフッタで、毎度「どうやって設定するんだっけ…」と

記事を読む

UILabelの改行をInterfaceBuilderから入力する

UILabelの行数は任意に設定できて、「0」を指定すると行数を限定しないで(UILabelのbou

記事を読む

実機テストしたときのデータを取り出す

Xcodeでコンパイルして実機テストしている場合に、テストデータを実機から取り出す方法です。 以下

記事を読む

UIActionSheetが消えるときにキーボード表示/非表示通知が来る

 UITextViewやUITextField編集中にアクションシートを表示すると、アクションシート

記事を読む

preferredContentSizeをUINavigationContorllerのPop時に再設定する

popoverで表示しているViewControllerのサイズを、他のViewController

記事を読む

ENMLからHTMLへの変換

最近EvernoteAPIをいじっているので、コレに関するノウハウをとりあえず断片的に引っかかったと

記事を読む

Xcode10からのimage literal / color literalの指定方法

アセットにあるUIImageの直接指定が可能なImage litera

Xcode11でのバージョン番号の取得方法

Xcode11になってバージョン番号をスクリプトから得て自動で更新する

GoogleスプレッドシートからCSVにエクスポートしたデータを得る方法

情報がない中さんざ苦労しましたが、Googleスプレッドシート(の最初

画面回転をしたあとに、UITextViewの先頭を表示する

回転によりサイズが可変するUITextViewで、縦向き(ポートレイト

NXDrawKitを導入してみる

ACEDrawingViewがObj-Cで書かれていて、いまいちメンテ

→もっと見る

    PAGE TOP ↑