현재 사용중인 iPhone 앱에 '로드'기능을 쓰고 있습니다.UIViewController 스택을 다시 만드는 방법은 무엇입니까?
실제로 내가하고 싶은 일은 사용자가 어디에서 중단했는지를 다시 얻는 것입니다. 그렇게하기 위해 전에 등장한 모든 UIViewController
을 다시 만들고 싶습니다.
[[self navigationController] pushViewController:newController animated:YES];
을 호출하면 내 문제는 UIViewController
이 표시되지 않습니다.
단추를 누른 후처럼 이벤트 처리기로 호출 할 때 동일한 코드가 제대로 작동합니다. 하지만 even (예 : viewDidLoad
)을 사용하지 않고 동일한 작업을 수행하면 새보기 컨트롤러의 loadView
메서드가 호출되지 않습니다. (일부 의사 요소)
내 실제 코드 :
- (void)viewDidLoad {
[super viewDidLoad];
if (loading)
[self onSomeEvent];
}
- (void)onSomeEvent {
UIViewController *newController = //init....;
[[self navigationController] pushViewController:newController animated:YES];
[newController release];
}
내가 viewDidLoad
그런 전화를 할 수있는 권리 장소가 아니다 것 같아요,하지만 무엇입니까?
사용자가 앱을 다시 실행할 때 상태를 복원하려고합니까? 이 답변이 도움이되는지 확인하십시오 : http://stackoverflow.com/questions/2360578/iphone-navigationcontroller-autoloading-to-three-level/2360901#2360901 – DyingCactus