내비게이션 컨트롤러의 문제점에 대해 약간의 도움이 필요합니다.popToRootViewControllerAnimated가 루트보기 컨트롤러를 표시하지 않습니다.
저는 navigationController
과 4 ViewControllers
푸시되었습니다. 마지막으로 내가 밀어 넣은 것보다 더 ViewController
을 선물한다. 모달 ViewController
은 ActionSheet
입니다. 사용자의 대답에 따라 모달 ViewController
만 기각하거나 루트 ViewController
으로 다시 가고 싶습니다. 제시 ViewController
에서
모달 내가 가진 : 마지막 ViewController
에서
- (void) dismissGameReport
{
[[self delegate] GameReportModalWillBeDismissed:modalToPopToRoot];
}
는 내가 가지고있는 navigationController
스택으로 푸시 :
- (void)GameReportModalWillBeDismissed: (BOOL)popToRoot;
{
if (popToRoot)
{
[self.navigationController popToRootViewControllerAnimated:NO];
}
else
{
[self dismissModalViewControllerAnimated:YES];
}
}
컨트롤러가 잘 작동 모달 뷰를 일축. 그러나 ,
[self.navigationController popToRootViewControllerAnimated:NO];
는보기를 표시하는 루트
ViewController
가 발생하지 않습니다. 일부 로그 정보 추가 메시지가 표시된 후
self.navigationController
에 스택이 제대로 표시되지만 실행은 순차적으로 계속됩니다. 화면에는 여전히 모달 ViewController의보기가 표시됩니다.
해결 방법 나는 항상 모달보기 컨트롤러를 해제하고 ViewWillAppear
메서드는 메시지가 있습니다. 차이 없음. 여전히 컨트롤러 스택이 튀어 나오지 만 화면은 계속해서 모달 뷰 컨트롤러의 뷰를 보여 주며 순차적으로 실행이 계속됩니다.
누군가 나를 도와 줄 수 있습니까?
컴파일러가 루프에 들어가는 중단 점을 사용하여 디버그하려고합니까? – Hiren