그래서 스토리 보드에 뷰 컨트롤러가 3 개 있습니다 (VC1, VC2 & VC3).모달 분할 후 마지막 UIViewController 제거
각보기는 다른보기로 모달 이동이 메소드 호출하는 IBAction를 호출 버튼이 있습니다
[self doSegue: myViewController_ID];
-(void) doSegue:(NSString *)_myViewController_ID
{
//get UiViewController from storybord with Unique ID
UIStoryboard *storyboard = self.storyboard;
UITableViewController *svc = [storyboard instantiateViewControllerWithIdentifier:_myViewController_ID];
//set presentation & transition styles
svc.modalPresentationStyle = UIModalPresentationFullScreen;
svc.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
//do segue
[self presentViewController:svc animated:YES completion:nil];
}
가 한번 VC2에서, VC2로 VC1에서 갈 것을 설정할 수를
내가 원했던 것은 이전의 ViewController (VC1)를 제거하는 것이다. 그리고 VC2에서 VC3으로 이동하면 뷰 계층 구조에서 제거하거나 VC2를 스택에 추가하고 싶습니다. 나는 [self dismissViewControllerAnimated:YES completion:nil];
방법
내가 메모리가 스택의 모든 뷰 컨트롤러 축적의 결과로 성장하지 않으려는 제공되지 않기 때문에
이입니다.
참고 : 탐색 컨트롤러 또는 탭 컨트롤러 (보기 컨트롤러 만 사용)는 사용하지 않습니다.
도움 주셔서 감사합니다.
이 VC2에 그런[self.previousViewController willMoveToParentViewController:nil];
[self.previousViewController removeFromParentViewController];
그냥 될 : 사용하여 보내기> prepareForSegue - 내가 'didn를
내가 그것을 탐색 컨트롤러없이 가능하다고 생각하지 않습니다 후, 당신은 당신이 그것을 사용하지 않을 확신? – Ezeki
네가 아직 깨닫지 못한다고해도 내게 네비게이션 컨트롤러가 실제로 필요해 보인다. 모달 뷰는 현재 탐색의 흐름을 방해하기위한 것입니다. "2 페이지로 이동"--- "아직 인증되지 않음"---- "현재 모드 로그인 화면"--- "인증 됨"--- "모달보기 해제"--- "2 페이지로 계속" – mkral
topBar가 보이지 않기 때문에 UINavigationController를 사용하지 않는다면 쉽게 제거 할 수 있습니다. – mkral