ストーリーボードプロトタイプセル(Xcode 6、iOS 8 SDK)のUICollectionViewCell contentViewのフレームの自動サイズ変更の問題は、iOS 7でのみ実行すると発生します
Xcode 6 Beta 3、iOS 8 SDKを使用しています。Swiftを使用してターゲットiOS 7.0をビルドします。以下のスクリーンショットを使用して、私の問題を段階的に参照してください。 StoryboardにUICollectionViewがあります。中央に1つのラベルを含むプロトタイプUICollectionViewCell(自動サイズ変更ルールなし)。紫色の背景は、実行時に生成されたContentViewをマークすることでした。そのビューは、UICollectionViewLayoutDelegateに基づいて適切にサイズ変更されますが、iOS 7では変更されません。Xcode6を使用しているため、問題はiOS 7でのみ発生します。 iOS 8でアプリをビルドするとき。すべてが大丈夫です。 注:紫はcontentView、青は角が丸いUIButtonです。 ただし、iOS 7では、セル内のすべてのサブビューが突然(0,0,50,50)のフレームに縮小され、自動サイズ変更ルールに準拠しなくなります。 これはiOS 8 SDKまたはSwift、あるいはXcodeのバグだと思いますか? 更新1:この問題は公式のXcode 6.0.1にも存在します!最善の回避策は、セルのcellForItemにフレームを設定することにより、KoCMoHaBTaが以下に提案したもののようです(ただし、セルをサブクラス化する必要があります)。これはiOS 8 SDKとiOS 7の間の非互換性であることが判明しました(Appleから引用された以下のecotaxの回答を確認してください)。 更新2: このコードをcellForItemの先頭に貼り付けます。問題はありません。 /** Xcode 6 on iOS 7 hot fix **/ cell.contentView.frame = cell.bounds; cell.contentView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; /** End of Xcode 6 on iOS 7 …