이것은 내 첫 번째 게시물입니다.모달 UIViewController 해제시 EXC_BAD_ACCESS 오류
저는 iPhone SDK의 초보자입니다. 간단한 질문이라도 대답 해주십시오. 탐색 기반 응용 프로그램을 만들었습니다. 계층 구조는 다음과 같이
가있는 navigationController - RootViewController - ATableViewController (RootViewController을 통해 밀어)
RootViewController에 먼저 내가 ATableViewController을 밀어했습니다. 그런 다음 TabBarController (각 네비게이션 컨트롤러가있는 네 개의 탭이 있음)가있는보기 컨트롤러를 제공합니다.
이제 각 탐색 컨트롤러에 두 개의 버튼을 유지하고 싶습니다. 하나를 클릭하면 모달 뷰 컨트롤러가 닫히고 다른 하나를 클릭하면 RootViewController로 돌아와야합니다.
따라서 모달 뷰 컨트롤러를 닫으려면 UINavigationBar
버튼을 사용하고 있습니다. 그러나 그것을 기각에 내가 오류가 발생 해요 :
*** -[CALayer superlayer]: message sent to deallocated instance 0xb157840
역 추적은 다음과 같습니다
#0 0x011bb657 in ___forwarding___()
#1 0x011bb522 in __forwarding_prep_0___()
#2 0x004c54e5 in _UIConvertDisplayPointToWindow()
#3 0x004c5695 in +[UIWindow _hitTestToPoint:pathIndex:forEvent:]()
#4 0x004a5709 in _UIApplicationHandleEvent()
#5 0x01cf8992 in PurpleEventCallback()
#6 0x0122b944 in __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__()
#7 0x0118bcf7 in __CFRunLoopDoSource1()
#8 0x01188f83 in __CFRunLoopRun()
#9 0x01188840 in CFRunLoopRunSpecific()
#10 0x01188761 in CFRunLoopRunInMode()
#11 0x01cf71c4 in GSEventRunModal()
#12 0x01cf7289 in GSEventRun()
#13 0x004aac93 in UIApplicationMain()
#14 0x00001cd9 in main (argc=1, argv=0xbffff678) at main.m:14
누구든지 저를 도와주세요하십시오. 나는이 문제로 2 주 동안 고투하고있다. 나는 그것을 검색하는 데 많은 시간을 보냈다.
도움을 주시면 대단히 감사하겠습니다.
읽어 주셔서 감사합니다.
당신은 더 이상 존재하지 않는 객체에 메시지를 보내는 : 그것은 당신이 문제를 디버깅하는 데 도움이 충돌에 대한 자세한 정보를 표시합니다. 그러나이 질문에 진정으로 대답하는 것은 불가능합니다. 컨트롤러를 닫을 때 사용하는 코드를 표시하고 가능한 경우 충돌이 발생한 줄을 알려주십시오. 중단 점을 설정 한 다음 중단 될 때까지 한 줄씩 단계별로 실행하여 줄을 찾을 수 있습니다. – sosborn
일반적으로 릴리스해서는 안되는 인스턴스를 릴리스 할 때 exec_bad_access 오류가 발생하므로 더 나은 도움을 얻을 수있는 코드를 제공하면됩니다. – Mousa
제 생각에는이 충돌 로그로는 충분하지 않습니다. 이미 할당이 해제 된 변수에 액세스 할 때이 충돌이 발생합니다. 액세스중인 변수 (CALayer)를 확인하십시오. – Ilanchezhian