시뮬레이터 3.1.3에서 내 앱을 테스트 중이므로 정상적으로 실행됩니다. 는 3.2 시뮬레이터 와서, 그것은 바로 처음부터 충돌 :시뮬레이터 3.2에서 실행 중 예외가 발생했습니다.
2010-06-24 16:35:29.208 MyTestApp[6991:207] *** Terminating app due to uncaught exception 'NSGenericException', reason: 'This coder requires that replaced objects be returned from initWithCoder:'
2010-06-24 16:35:29.213 MyTestApp[6991:207] Stack: (
46195275,
2520474889,
46194715,
46194554,
6387912,
6392266,
5568184,
6388086,
6386450,
6392266,
5564974,
5573454,
3555255,
3560368,
3586056,
3567777,
3599431,
52998524,
45735996,
45731912,
3559044,
3591649,
10824,
10678
)
지금까지 내가 아는 한, 난 정말이 무엇인지 모르는 "initWithCoder"방법을 (사용하지 않는 그래도).
문제의 원인을보다 잘 이해할 수 있도록 예외가 throw 된 위치를 어떻게 알 수 있습니까?
ps : 중단 점 : objc_exception_throw (위치가 libobjc.A.dylib이고, 이상하게도 수동으로 위치를 입력해야합니다. objc_exception_throw를 추가했을 때 xcode에서 찾았을 것으로 예상했습니다). 그러나 여전히 동일한 추적과 더 이상의 정보가 없습니다. 특히 관심의 Debugging Tips for Objective-C
콘솔 명령 info line *
입니다 :
'initWithCoder'는 일반적으로 XIB 파일이로드 될 때 호출됩니다. 첫 번째로 확인하고 싶을 수도 있습니다 – iwasrobbed
안녕하세요,이 오류 때문에 (내 앱이 깨끗하지 않았기 때문에) 처음부터 다시 작성하기로 결정했습니다. 하나의 코코아 콩 파일에서 뭔가를 바꿀 때까지 일을 시작하기 시작했습니다. (무엇을 알지 못합니다.하지만 큰 것은 아니 었습니다.) 나는이 오류가 다시 발생하기 시작합니다. 당신이 말했듯이 이것은 nib 파일들에 대한 링크이지만, 나는 그 이유가 무엇인지 모릅니다. – Luc
안녕하세요, 마침내이 문제의 원인을 발견했습니다. 당신 말이 맞았어요.이 파일은 nib 파일에 링크되어 있습니다. 메인 nib 파일에서 NSDictionary 타입의 객체 인스턴스를 추가했습니다. 이것은 앱 델리게이트의 속성으로 사용하는 객체입니다. 대신 위임자에서이 개체를 초기화하고 훨씬 더 나은 지금 작동합니다. 고마워. Luc – Luc