2014-09-04 49 views
-1

正如您在图片上看到的那样,在正常情况下,我单击button1调用第二个视图,然后单击button2调用最后一个视图,在特定场景中,我想单击button1调用最后一个视图。 我说这对梅索德viewDidLoad中:如何以编程方式从不相关的View Controller调用View Controller?

if(condition) 
    [self performSegueWithIdentifier:@"thirdview" sender:self]; 

,但它不能正常工作,任何帮助,请。

谢谢。 enter image description here

回答

3

您需要添加从ViewController1Viewcontroller3的继续。

但是,如果你用很多viewControllers做到这一点,那么它变得凌乱,我称之为spaguetti塞格斯。

另一种方法是以模态方式显示viewController

例子:

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main_iPhone" bundle:nil]; 
ViewController3 *viewController = 
     [storyboard instantiateViewControllerWithIdentifier:@"viewController"]; 
[self presentViewController:viewController animated:YES completion:nil]; 

(确保你给ViewController3一个storyboardId

+1

我同意这个答案。通过故事板ID加载视图是一种干净的方式来处理这种独特的情况。我不认为一个UI元素可以有多于一个的连接。 – 2014-09-04 16:12:44

相关问题