XCode 4.5 と iOS 6 を使用して、カスタム セルを含む単純なテーブル ビューを備えたアプリを開発しています。iOS 5 以下でこれを 100 回実行しましたが、何らかの理由で新しい autoLayout システムが多くの問題を引き起こしています。
IB でテーブル ビューとプロトタイプ セルをセットアップし、サブビューを追加して IBOutlets として接続し、デリゲートとデータソースをセットアップしました。ただし、最初のセルがからフェッチされるたびにcellForRowAtIndexPath
、次のエラーが発生します。
*** -[ShopCell layoutSublayersOfLayer:]、/SourceCache/UIKit_Sim/UIKit-2372/UIView.m:5776 でのアサーションの失敗
*** キャッチされない例外 'NSInternalInconsistencyException' が原因でアプリを終了します。理由: '-layoutSubviews の実行後も自動レイアウトが必要です。-layoutSubviews の ShopCell の実装では、super を呼び出す必要があります。
サブクラス化されたセル (ShopCell) に -layoutSubviews メソッドを実装していません。それを実行しようとしてスーパー コールを追加しても、同じエラーが発生します。IB のセルからサブビューを削除し、それを標準の UITableViewCell に変更すると、すべてが期待どおりに機能しますが、もちろんセルにはデータがありません。
欠けている単純なものがあることはほぼ確実ですが、間違ったことを示唆するドキュメントやガイドが見つかりません。どんな助けでも大歓迎です。
編集: IBでUITableViewCellに変更して、すべてのサブビューをそのままにしてみましたが、それでも同じエラーです。