나는 UINavigationController
및 UIViewController
에 대해 학습하고 있습니다. 다음은 내가 만든 간단한 앱입니다. ARC를 사용합니다.UINavigationController 및 UIViewController는 어떻게 작동합니까?
내 앱에는 내비게이션 컨트롤러와 두 개의보기 컨트롤러가 있습니다 (FirstViewController
및 SecondViewController
). 앱이 실행되면 내비게이션 컨트롤러 FirstViewController
을 스택에 놓습니다.
FirstViewController
나는 터치했을 때 SecondViewController를 누르는 버튼이 있습니다. 여기에 몇 가지 코드가 있습니다.
번째 뷰 컨트롤러 FirstViewController.m
-(IBAction)pushSecondViewController
{
SecondViewController *secondViewController = [SecondViewController alloc]init];
[self.navigationController pushViewController:secondViewController animated:YES];
}
I는 스택에서 현재 뷰 컨트롤러 팝업 버튼을 가지고있다.
SecondViewController.m
-(IBAction)popViewController
{
[self.navigationController popViewControllerAnimated:YES];
}
지금까지 너무 좋아. 내 질문은 다음과 같습니다.
navigationController는 기존 인스턴스 SecondNavigationController
을 확인하고 존재하지 않으면 새로운 인스턴스를 만듭니다.
그렇지 않은 경우 싱글 톤을 사용하여 SeconViewController
을 누르는 버튼을 터치 할 때마다 새 인스턴스를 만드는 대신 하나의 인스턴스 만 만들어지고 다시 사용되는지 확인해야합니까?
아니요, 두 번째보기 컨트롤러를 계속 유지하고 싶지 않습니다. 내비게이션 컨트롤러가 작동하는 방식에 대해 궁금합니다. 설명 주셔서 감사합니다! – ihodo
새 주제를 시작하지 않으려면.내 앱에 4 개의보기 컨트롤러가 있다고 가정하면 첫 번째와 두 번째보기 컨트롤러는 앱에서 한 번만 사용됩니다. 메모리를 사용하지 않기 위해서 네비게이션 컨트롤러에서 그들을 팝업해야합니까 ([self.navigationController popViewControllerAnimated : YES])? – ihodo
아니요, 푸시 및 팝을 사용하여 탐색 스택을 위아래로 이동합니다. – jrturton