虽然所有其他答案都很好,但在我看来,问题是你是否应该从B
它自己的另一个副本推送。对我来说,这是由你是否想从一个跳到B
上一个的问题来回答的B
。如果是这样,那很好,当您想返回时使用其中一个popToRootViewControllerAnimated
或答案。popToViewController
A
如果没有,你根本不应该从B
它自己的另一个副本推送。但是,如果您想向用户展示“让我们再做一次”按钮,您可以做什么,您可以使用transitionWithView
. 例如,如果我们假设您有一堆UITextField
控件,B
并且您有一个“添加另一个”按钮,它可能会执行以下操作:
- (IBAction)onPressAddButton:(id)sender
{
// save the record here
// now, let's animate the resetting of the text fields
[UIView transitionWithView:self.view
duration:0.5
options:UIViewAnimationOptionTransitionCurlUp
animations:^{
self.textField1.text = nil;
self.textField2.text = nil;
self.textField3.text = nil;
}
completion:nil];
}
而且,顺便说一句,如果你这样做,你现在不需要做任何花哨的事情就可以从 B 回到 A。标准导航栏可以满足我们的一切需要。