iPhone上のSIGABRT XIBを変更
-
18-09-2019 - |
質問
私はちょうど今日まで、iPhoneのシミュレータと実際のデバイスの微細走った、iPhone用アプリを終えました。
私は自分のアプリケーションデリゲートクラスのapplicationDidFinishLaunchingメソッドでロードされているXIBを変更しようとした - 私がしたすべてはinitWithNibNameで文字列を変更した。
。 Iシミュレータでアプリを起動すると、Default.png画像が表示され、は、アプリがキャッチされない例外でクラッシュ。デバイス上で動作している場合は、Default.pngイメージは、約10秒間表示され、UIがロードされることはありませんし、私が得る「GDB:プログラムは、信号受信: 『SIGABRT』を」 Xcodeのステータスバーに。デバッグはapplicationDidFinishLaunchingが実際にアプリがクラッシュする前に到達されることはありませんことを示しています。
元への出発XIBを設定するには、問題を解決し、今私は、変更を行ったし、Interface Builderで、それを保存したアプリは、上記と同様の問題を示している - 私はコードが全く変化しない作りました。
これはメモリの問題、あるいは一般的な間違いの既知の問題ですか?
注:私は一切コードの変更は行われませんしました、と私はXIBに加えた変更のみが化粧品のある、IBOutletsはすべて完全な状態である。
。解決 2
申し訳ありませんが、みんな、私のせい - 私がMainWindow.xibファイルを削除表示されますので、私は変更を行った後、デリゲートは、起動時に呼び出されませんでした。私はそれを再作成し、今すべての作品のアプリデリゲートとのUIApplicationにそれをリンクします。
他のヒント
あなたはおそらくXIBでそれを変更することなく、コードにIBOutletの名前を変更します。
あなたはおそらく戻って、あなたのコードにXIBから接続IBOutletsがあったが、それらの接続が切断されている。
あなたは私たちにnibname文字列が変更された方法についてもう少し詳細を与える必要があります。あなたのXIBファイルの名前を変更しましたか?
私はいくつかのクラスとXibsと改名し、main.mにSIGABRTを得た。
アイデンティティインスペクタのクラス名は、非existantクラス名を指している可能性があります。
そのinitWithNibNameに正しいXIB名を与えていないので、それがクラッシュしてしまいますので、