오늘 아이폰 앱을 테스트하고 디버깅하는 중 일부 이상한 동작이 발생했습니다. 내 MainView
에서iPhone - viewDidUnload/viewDidLoad가 일관성없이 호출되었습니다.
나는 두 모달 뷰를 가지고 presentModalViewController
를 사용하여이 중 하나를 표시 할 때 나는 다른를 보여주는 경우가 발생하지 동안 내 MainView
의 viewDidUnload
메서드가 호출 된 것을 지적했다. 하위보기를 닫는 동안 viewDidLoad
메서드 (MainView
)의 경우는 마찬가지입니다.
나는 서브 뷰를 열고 닫는 두 가지 방법을 조사했는데 발견 된 유일한 차이점은 modalTransitionStyle
입니다. viewDidUnload
/viewDidLoad
을 활성화 한 사람은 UIModalTransitionStyleFlipHorizontal
이고 다른 사람은 UIModalTransitionStyleCrossDissolve
입니다. 그런 다음 두 스타일을 바꾸고 다른 전환 스타일을 사용하여 실험을 시작했습니다. 실제로 이것이 다른 동작을 유발하는 것으로 나타났습니다. 실제로 UIModalTransitionStyleFlipHorizontal
을 사용할 때 "부모"뷰 컨트롤러의 viewDidUnload
/viewDidLoad
메서드는 항상 다른 전환 스타일에 대해 발생하지 않았지만 항상 호출되었습니다.
제 질문은 이제 이와 같이 행동해야하고, 그렇지 않은 경우 올바른 행동입니다. 모달 뷰를 표시하고 닫을 때 unload 및 load 메서드가 호출되어야합니다.
다른 사람이이 동작을 확인하거나 disconfirm 할 수 있습니까?
탄원
ps. 두 개의 뷰 컨트롤러라고하는 viewDidLoad
메서드는 매번 호출됩니다. 그냥 명확히 :)
iOS 시뮬레이터 또는 기기에서 이런 일이 발생합니까? 어떤 SDK를 사용하고 있습니까? – Felix
사용중인 SDK의 버전을 알려주십시오. viewDiDLoad 및 viewDidUnload가 호출되었는지 여부를 확인하기 위해 사용중인 실제 코드를 표시하면 도움이 될 수도 있습니다. –
@ phix23 : 이것은 iOS 4.2.1을 실행하는 iPhone 4 (기기)에서 발생합니다. SDK 4.2 사용하고 있습니다. – pajevic