我有一个初始视图控制器,我需要从中推送到第一个视图控制器。在第一个视图控制器的后退点击而不是回到初始视图控制器我需要转到第三个视图控制器。从后面点击第三个视图控制器它应该回到初始视图控制器。任何人都可以建议我如何在ios6和ios7中做到这一点。
答案 0 :(得分:0)
在推送后调用setViewControllers:animated:
,将中间视图控制器插入堆栈。
答案 1 :(得分:0)
还有很多其他方法可以做,但我更喜欢这个:
为此你必须在第一个视图控制器(在你的情况下)中以编程方式添加导航栏按钮作为“后退”但在这种情况下你需要back_arrow图像:
UIImage *faceImage = [UIImage imageNamed:@"back_arrow.png"];
UIButton *face = [UIButton buttonWithType:UIButtonTypeCustom];
face.bounds = CGRectMake( 10, 0, faceImage.size.width, faceImage.size.height );
[face addTarget:self action:@selector(handleBack) forControlEvents:UIControlEventTouchUpInside];
[face setImage:faceImage forState:UIControlStateNormal];
UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithCustomView:face];
self.navigationItem.leftBarButtonItem = backButton;
[self.navigationItem setHidesBackButton:YES animated:YES];
[self.navigationItem setLeftBarButtonItem:nil animated:NO];
[self.navigationItem setBackBarButtonItem:nil];
-(void)handleBack
{
//got third view controller here
}
它可以帮到你。