*** Terminating app due to uncaught exception ‘NSInternalInconsistencyException’, reason: ‘The NIB data is invalid.’

普段は iOS6 の端末で動作確認していたのですが、ふと iOS5 の端末で実行しようとしたらエラーになりました。
エラーメッセージでググってみると、NIB で Autolayout を使っているためではないかということが分かりました。iOS5 では Autolayout に対応していないためエラーになるようです。
早速確認してみましたが、Autolayout にチェックは入っていませんでした。
autolayout-screen.png
発生する場所は、UITableView にセルを表示するための

– (UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath

の中です。
もう少し調べてみると、カスタムセルに貼付けてある UITextField で、Attribited が指定してあると
えらーになることがわかりました。Attributedが指定されていると、↓こんな感じになります。
attributed_text-screen.png
AttributedをやめてPlainに変更しました。Attributedを使っていた理由はテキストにアンダーラインを引くためのものだったのですが、iOS5のときはアンダーラインはあきらめるようにしようと思います。


0件のコメント

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください