2009-08-18 11 views
1

プロジェクトに画像ファイル(png)を追加しました。私のアプリケーションをコンパイルし、それがすべて動作しました。今私は、イメージファイルを削除し、ビルドターゲットをきれいにして、再度コンパイルしました。すべてがコンパイルされますが、アプリケーションは起動しません。私が見るのは、ドックのジャンプアイコンです。 Xcodeさんのコメント:ファイルを削除した後、Xcodeでコンパイルしたアプリケーションが起動しない

__TERMINATING_DUE_TO_UNCAUGHT_EXCEPTION__ 

誰でも助けてくれますか?ありがとう。削除された画像/音声の/ etc ...ファイルと

[Session started at 2009-08-18 15:06:27 +0200.] 
2009-08-18 15:06:27.792 My PC LOAD LETTER[1435:10b] An uncaught exception was raised 
2009-08-18 15:06:27.793 My PC LOAD LETTER[1435:10b] *** -[NSCFArray objectAtIndex:]: index (3) beyond bounds (2) 
2009-08-18 15:06:27.793 My PC LOAD LETTER[1435:10b] *** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[NSCFArray objectAtIndex:]: index (3) beyond bounds (2)' 
2009-08-18 15:06:27.794 My PC LOAD LETTER[1435:10b] Stack: (
    2494636011, 
    2491268667, 
    2494635467, 
    2494635530, 
    2455154639, 
    2454620040, 
    2467614489, 
    2467616211, 
    8392, 
    2494695413, 
    2466250126, 
    2466209722, 
    2466208028, 
    2466207071, 
    2466206877, 
    2466206028 
) 

[Session started at 2009-08-18 15:06:27 +0200.] 
GNU gdb 6.3.50-20050815 (Apple version gdb-966) (Tue Mar 10 02:43:13 UTC 2009) 
Copyright 2004 Free Software Foundation, Inc. 
GDB is free software, covered by the GNU General Public License, and you are 
welcome to change it and/or distribute copies of it under certain conditions. 
Type "show copying" to see the conditions. 
There is absolutely no warranty for GDB. Type "show warranty" for details. 
This GDB was configured as "i386-apple-darwin".sharedlibrary apply-load-rules all 
Attaching to process 1435. 
kill 

The Debugger Debugger is attaching to process 
[Session started at 2009-08-18 15:06:32 +0200.] 
2009-08-18 15:06:32.897 My PC LOAD LETTER[1446:10b] An uncaught exception was raised 
2009-08-18 15:06:32.898 My PC LOAD LETTER[1446:10b] *** -[NSCFArray objectAtIndex:]: index (3) beyond bounds (2) 
2009-08-18 15:06:32.898 My PC LOAD LETTER[1446:10b] *** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[NSCFArray objectAtIndex:]: index (3) beyond bounds (2)' 
2009-08-18 15:06:32.899 My PC LOAD LETTER[1446:10b] Stack: (
    2494636011, 
    2491268667, 
    2494635467, 
    2494635530, 
    2455154639, 
    2454620040, 
    2467614489, 
    2467616211, 
    8392, 
    2494695413, 
    2466250126, 
    2466209722, 
    2466208028, 
    2466207071, 
    2466206877, 
    2466206028 
) 

[Session started at 2009-08-18 15:06:32 +0200.] 
GNU gdb 6.3.50-20050815 (Apple version gdb-966) (Tue Mar 10 02:43:13 UTC 2009) 
Copyright 2004 Free Software Foundation, Inc. 
GDB is free software, covered by the GNU General Public License, and you are 
welcome to change it and/or distribute copies of it under certain conditions. 
Type "show copying" to see the conditions. 
There is absolutely no warranty for GDB. Type "show warranty" for details. 
This GDB was configured as "i386-apple-darwin".sharedlibrary apply-load-rules all 
Attaching to process 1446. 
(gdb) 

私は常に持っていた問題:ここで

は(はい、アプリケーションは「私のPC負荷LETTER」と呼ばれる)デバッガが言っていることです。また、Visual Studioでも。

私はUKPrefsPanelのtabViewアウトレットであるタブビューのタブの識別子としてイメージのファイル名を使用しています。

答えて

1

PNGを戻すと、コンパイルされて再度実行されますか?そうでない場合は、ビルド環境のクリアが少しクリアされました。


ああ、Qでより多くのコメントが、そう多くのテキスト、このAで...

"インデックス(3)境界を越えて(2)" インデックス問題があることを示唆しています。このインデックス値をどこかにハードコーディングしましたか?または、インデックス値を設定ファイルに保存しましたか?私は、あなたが持っていると想像することができます。ファイルリストが保存され、PNGを削除すると、このリストは1つ小さい項目になりますが、索引にはこれが反映されない可能性があります。そのため、項目3はまだ存在しません。 配列を使用している場所でコードをチェックし、インデックスが常にこの配列の範囲内にあることを確認してください。範囲外の場合にカスタム例外を発生させますが、コード自体に依存しないでチェックしてください。 (言い換えれば、防御プログラミングを適用してください)

+0

既に試しています。いいえ、申し訳ありません。 –

+0

問題は、まだ1行のコードを入力していないことです。しかし、私はXcodeの生成コードを見ていきます。 –

+0

はい、そうです、それはXcodeによって生成されたファイルのインデックスでした。 –

1

コード(またはInfo.plist)のどこにでもファイルを参照していないことを確認してください。

+0

いいえ、xibファイルにはありません –