我有一个视图,用户可以将数据添加到表中,并且可以从应用程序的多个位置访问它。但是当用户在此视图中按下按钮时,我希望他回到特定的视图,而不仅仅是他来自的任何视图。
我试图谷歌这个,但我找不到任何方法。
据我所知,我需要首先将所需的视图推送到堆栈然后弹出它。但是当我这样做时,按下按钮时我得到的只是一个黑屏。
如何解决这个问题?
答案 0 :(得分:3)
也许你可以尝试一下:
-(void)popToSpecificViewController:(UIViewController *)controller
{
NSMutableArray *mutableVCArray = [NSMutableArray arrayWithArray:self.navigationController.viewControllers];
[mutableVCArray insertObject:controller atIndex:mutableVCArray.count-1];
[self.navigationController setViewControllers:mutableVCArray animated:NO];
[self.navigationController popViewControllerAnimated:YES];
}
答案 1 :(得分:1)
你可以使用 segue 来推送那个视图控制器,无论如何都可以通过ctrl用ctrl来拖动它并拖动到特定的视图来创建segue,或者你可以用编程方式来编写它您提到的按钮的IBAction,如下所示:
UIViewController *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"DestinationController"];
[self.navigationController pushViewController:controller animated:YES];