*

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

関連記事

StoryboardからPopoverを作っても位置合わせコードは必要

これだけだとわかりづらいんですが。 XcodeのStoryboardから、Segueを"Prese

記事を読む

NSAttributedStringをローカライズする方法

NSAttributedStringをLocalizeするうまい方法はないものかと探したら、これが手

記事を読む

ENMLからHTMLへの変換

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

記事を読む

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

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

記事を読む

UIAutomation関連覚書

割りと忘れがちなので、自分用備忘録を兼ねて、UIAutomationに関連するtips的なものをまと

記事を読む

バージョンアップ版があることを通知する

拍子抜けするほど簡単だったので、「アプリのバージョンアップの通知をどうするか」という話についてTip

記事を読む

コードでiPhone6 Plusを識別する簡単な方法

表題の通り、コードでiPhone6 Plusを識別する簡単な方法です。 iPhone6 Plu

記事を読む

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

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

記事を読む

UIButtonのappearanceで派生する色設定

以下のコードでUIButtonのappearanceでBackgroundColorの設定をすると、

記事を読む

ヒラギノ角ゴを使う

小ネタですが存外調べるのが面倒だった項目なので覚書しておきます。 ヒラギノ角ゴシック体を使うた

記事を読む

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

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

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

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

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

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

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

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

NXDrawKitを導入してみる

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

→もっと見る

    PAGE TOP ↑