Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/100.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何切换回主视图,即ViewController.h“;MainstryBoard.storyboard的nib名称是什么?_Ios_Objective C_Uistoryboard - Fatal编程技术网

Ios 如何切换回主视图,即ViewController.h“;MainstryBoard.storyboard的nib名称是什么?

Ios 如何切换回主视图,即ViewController.h“;MainstryBoard.storyboard的nib名称是什么?,ios,objective-c,uistoryboard,Ios,Objective C,Uistoryboard,我使用以下代码从主视图(ViewController.h)切换到另一个视图(TouchViewController),然后类似地从该视图切换到下一个视图(QuestionsViewController)。 如何从这里返回主视图?即initWithNibName对于MainStoryboard.storyboard的值是多少 - (IBAction)startGame:(UIButton *)sender { TouchViewController *second = [[TouchVi

我使用以下代码从主视图(
ViewController.h
)切换到另一个视图(
TouchViewController
),然后类似地从该视图切换到下一个视图(
QuestionsViewController
)。
如何从这里返回主视图?
initWithNibName
对于
MainStoryboard.storyboard
的值是多少

- (IBAction)startGame:(UIButton *)sender {

    TouchViewController *second = [[TouchViewController alloc] initWithNibName:@"TouchViewController" bundle:nil];

    [self presentViewController:second animated:YES completion:nil];
}

现在回到主视图,我有一个问题,即

- (IBAction)backtoMainMenu:(id)sender {
    ViewController *second = [[ViewController alloc]initWithNibName:@"MainStoryboard.storyboard" bundle:nil];
    [self presentViewController:second animated:YES completion:nil];
}

在这一点上,应用程序只是崩溃!我想这是因为
initWithNibName:@“MainStoryboard.storyboard”
不能使用,但是
ViewController
没有任何其他
xib
文件-那么我该怎么办呢?

首先
故事板
不能用作xib文件它们不是一回事。其次,您有一个视图控制器,它显示一个视图控制器,该视图控制器也显示一个视图控制器,因此您可以从第三个视图控制器执行以下操作:

[self.presentingViewController.presentingViewController 
            void)dismissViewControllerAnimated:YES completion:nil];
这是最快的方法,但它不是真正可重用的,如果您有一个更复杂的视图控制器层次结构,那么像这样做会非常难看,其他解决方案可以是delgate或通知

还有一条建议,当您想返回到上一个屏幕时,通常不知道如何创建新的视图控制器(当您尝试使用
backToMainMenu
方法时,您只需删除所有视图控制器(屏幕),直到达到所需的屏幕

[self.presentingViewController.presentingViewController 
            void)dismissViewControllerAnimated:YES completion:nil];