다음과 같은 이유와 해결 방법을 이해하는 데 어려움이 있습니다.uisplitviewcontroller와 함께 사용되는 모달 뷰를 닫은 후 문제가 발생했습니다.
분할보기 기반 응용 프로그램을 사용하여 응용 프로그램을 만들었습니다. 기본 루트 컨트롤러의 바닥 (의 좌측에 표시됩니다,
- (IBAction)showTheModal:(id)sender {
theModalController.modalPresentationStyle = UIModalPresentationFullScreen;
theModalController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
[self presentModalViewController:theModalController animated:YES];
if ([detailViewController popoverController] != nil)
[[detailViewController popoverController] dismissPopoverAnimated:YES];
과정의 BarButtonItem :
은 내가 UiBarButtonItem가 RootViewController.m에서 발견이 메소드를 호출하는 showTheModal라는 추가 한 조경에있는 쪼개지는 전망) 또는 팝업의 바닥에 (조경에서 경우에).
모달보기는 도구 모음에있는 단추로 닫힙니다. 그것은 다음을 호출합니다 :
[self dismissModalViewControllerAnimated: YES];
모달이 작동하는 동안 나는 화면을 회전시키는 것이 문제입니다. 다음은 서로 다른 시나리오에서 발생하는 상황입니다 (시작은 showTheModal 버튼이 눌린 방향, 끝은 dismissModal 버튼을 누를 때의 방향을 나타냄).
1) 풍경 시작, 끝 풍경 : 모든 것이 잘 보입니다. willHideViewController 및 willShowViewController 메서드가 RootViewController에서 호출되지 않습니다. (예상대로)
2) 가로 시작, 끝 세로 : UI가 정상적으로 나타납니다. willHideViewController가 두 번 실행됩니다 (이유는 무엇입니까?)
3) 시작 세로, 끝 세로 : UI가 정상적으로 나타납니다. willHideViewController가 한 번 실행됩니다 (예상대로)
4) 세로보기 시작, 가로보기 : '루트 목록'버튼이 세부보기 (분할보기의 오른쪽)에 남아 있습니다. willHideViewController 및 willShowViewController가 호출되지 않습니다 (WHY ??) 에 관해서는
어떤 생각이 왜 # 2, # 4, 진단을 위해