私はUIViewControllerを持っていますxibファイルからロードしてナビゲーションコントローラスタックにプッシュしています。ビューコントローラ用のヘッダファイルでIBOutletにUILabelを接続するとクラッシュする
、私が持っている:私はまだコードに「myTitle」で何もしない
IBOutlet UILabel *myTitle;
。私は接続を設定していました。
アプリケーションをコンパイルして実行すると、xibファイルにラベルが定義されていないため、IBOutletには何も付いていません。ビューコントローラは、インターフェイスビルダで構築したビューを表示するだけで、きれいに表示されます。
インターフェイスビルダーのxibにラベルを追加しても、コンセントに接続せずに再コンパイルしても、それでも機能しますが、入力したデフォルトのテキストでラベルが表示されます。
しかし、インタフェースビルダーのラベルにmyTitleを接続して再コンパイルして実行すると、View Controllerをナビゲーションコントローラのスタックにプッシュしようとするまでうまくいきます。その時点でクラッシュします。
*** -[UILabel copyWithZone:]: unrecognized selector sent to instance 0x4558e20
コンセントをもう一度切断すると、以前のように静的ラベルが表示され、作業を再開します。ビューが表示されると、ファンキーなことが起こっているように見えます。なぜなら、ビューをナビゲーションスタックにプッシュするとクラッシュが発生するからです。
私はIBOutletをUILabelなどに追加する予定はありませんか?それとも何か他のことが起こっていますか?問題を探す場所に関する提案はありますか?
私は同じ問題があり、アクセサーを作成しました。ブレークポイントを設定すると、コードの最初の行に到達する前にブレークポイントが爆発します。私の場合、問題は最初の(唯一の)View Controllerにあります。 – Andiih