我创建了一个UIButton,按下后,将我的用户带到主屏幕(充当" Back"按钮)。因为我想在没有通常笨重的导航栏的情况下实现这一点,我使用了下面的代码。然而,当按下按钮时,过渡从右到左;如何从左到右进行下面的segue过渡(在"后面"动作中)?
FullArticleViewController.m
-(IBAction)goBack:(id)sender {
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main_iPhone" bundle:nil];
FullArticleViewController *yourViewController = (FullArticleViewController *)[storyboard instantiateViewControllerWithIdentifier:@"ArticlesViewController"];
[self.navigationController pushViewController:yourViewController animated:YES];
}
答案 0 :(得分:0)
使用此:
[self.navigationController popViewControllerAnimated:TRUE];
这会将您的导航控制器堆栈“弹出”回一个视图控制器。这也会阻止您像现在一样将视图控制器添加到堆栈中。
您可以使用类似的东西弹出多个视图控制器(仅供参考):
UIViewController *viewToPopTo = [self.navigationController.viewControllers objectAtIndex:([self.navigationController.viewControllers indexOfObject:self] - 2)];
[self.navigationController popToViewController:viewToPopTo animated:TRUE]; //Pops back 2
答案 1 :(得分:0)
如果您使用UINavigationController推送FullArticleViewController,请写:
[self.navigationController popViewControllerAnimated:YES];
如果您以模态方式呈现,请写:
[self.presentingViewController dismissViewControllerAnimated:YES];
使用UINavigationController对象时,默认情况下会显示导航栏,但如果需要,可以隐藏它。