0

ARC を使用した Cocoa Touch プロジェクトを持っていますが、このエラーが時々発生します。このエラーの種類と解決方法を教えていただけますか?

-[__NSCFString deviceOrientationDidChange:]: unrecognized selector sent to instance 0x1ddf81a0

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString deviceOrientationDidChange:]: unrecognized selector sent to instance 0x1ddf81a0'
*** First throw call stack:
(0x313132a3 0x38fad97f 0x31316e07 0x31315531 0x3126cf68 0x31264037 0x31b7a599 0x33121c65 0x3311c3db 0x3311b6cd 0x3311b11b 0x34e1c5a3 0x34e1c1d3 0x312e8173 0x312e8117 0x312e6f99 0x31259ebd 0x31259d49 0x34e1b2eb 0x3316f301 0x14b61 0x14ae8)
libc++abi.dylib: terminate called throwing an exception
4

2 に答える 2

2

ゾンビの問題があります。これをシミュレーターで再現できる場合は、Zombies インストゥルメントで実行してください。デバイスでしか再現できない場合は、スキームを編集し、[診断] タブに移動して、ゾンビのチェックボックスをオンにします。(残念ながら、Instruments はデバイス上でゾンビ検出を提供しません。)

于 2013-02-20T05:34:07.023 に答える
1

あなたが見ているクラッシュはARC とはdeviceOrientationDidChange:の関係もなく、偽の " " メッセージを受信して​​いるオブジェクト (NSCFString オブジェクトのように見える) とすべて関係があります。

" " にシンボリック ブレークポイントを設定しdeviceOrientationDidChange、送信されるメッセージをキャッチすることをお勧めします。そうすれば、コードのどの行が壊れているかがわかります。

于 2013-02-20T05:17:37.833 に答える