我有一个根视图和几个子视图。对于每个视图,我都有一个信息按钮,它会导致视图翻转以显示信息屏幕。我的问题是,当我使用后退按钮向后翻转时,它不会将我带到我离开的屏幕 - 它会将我带回根视图。在我完成添加翻转而不是通常的推动的所有工作之前,这很好!
在一个视图控制器(我称之为detailViewController)中,它是层次结构的3页:
- (void)infoAction {
infoViewController *controller = [[[infoViewController alloc] init] autorelease];
[self.navigationController pushViewController:controller animated:NO];
}
在那个 infoViewController 中:
-(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
[UIView beginAnimations:@"animation" context:nil];
[UIView setAnimationDuration:0.8];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.navigationController.view cache:NO];
[UIView commitAnimations];
}
-(void) viewWillDisappear: (BOOL) animated{
[super viewWillDisappear:animated];
[self.navigationController popViewControllerAnimated:YES];
[UIView beginAnimations:@"animation" context:nil];
[UIView setAnimationDuration:0.8];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.navigationController.view cache:NO];
[UIView commitAnimations];
}
它不会让我回到“detailViewController”。它带我回到第一个打开的屏幕视图。
顺便说一句,在信息屏幕的导航栏中,后退按钮被正确标记为 detailViewController 标题,而不是根视图标题,即使点击后退按钮不会将您带到它所说的位置!请帮助...谢谢!