navigationController가 있습니다. 첫 번째 viewcontroller는 일종의 FirstViewController 클래스입니다. FirstViewController에서 버튼을 누르면 navigationController 클래스의 일종 인 두 번째 viewController가 push됩니다. 내가 SecondViewController의 버튼을 탭하면 FirstViewController (이전에 navigationController에 저장되어 있음)를 dealloc하여 SecondViewController의 navigationItem에서 뒤로 버튼을 누를 때 FirstViewController를 처음 열었을 때처럼 다시 시작하려고합니다. 여기에서 secondViewController의 버튼을 누를 때 호출되는 메서드의 코드는 다음과 같습니다.첫 UIViewController 클래스를 가져 오지 않고 UINavigationController의 다른 UIViewController에서 수동으로 UIViewController를 dealloc 할 수 있습니까?
NSArray * navigationPath = [self.navigationController viewControllers];
UIViewController *previousVC = [navigationPath objectAtIndex:[navigationPath count]-2];
[previousVC performSelector:@selector(viewDidUnload)];
FirstViewController를 dealloc하지 않습니다. 그것을 할 수있는 방법이 있습니까?
수동으로 할당 해제해서는 안됩니다. 객체의 보유 수를 0으로 줄이고 첫 번째보기 컨트롤러를 할당 해제 할 필요가없는 경우 런타임에 객체의 dealloc 메소드가 호출됩니다. 디자인을 변경 –