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/Objective-C/Storyboard:阻止ViewController以模式启动_Ios_Objective C_Presentviewcontroller - Fatal编程技术网

IOS/Objective-C/Storyboard:阻止ViewController以模式启动

IOS/Objective-C/Storyboard:阻止ViewController以模式启动,ios,objective-c,presentviewcontroller,Ios,Objective C,Presentviewcontroller,我希望viewcontroller使用show transition启动,而不是从底部模式启动。通常,当我使用下面的代码时,就会发生这种情况。然而,在这种情况下,它是作为模态控制器从下到上启动的。是否有一个我不知道的开关,或者故事板中是否设置了某种东西,导致这个VC从底部以模式启动,而不是显示 UIStoryboard *storyBoard = self.storyboard; IDImportEventsOnboard *importEvents = [storyBoar

我希望viewcontroller使用show transition启动,而不是从底部模式启动。通常,当我使用下面的代码时,就会发生这种情况。然而,在这种情况下,它是作为模态控制器从下到上启动的。是否有一个我不知道的开关,或者故事板中是否设置了某种东西,导致这个VC从底部以模式启动,而不是显示

 UIStoryboard *storyBoard = self.storyboard;

    IDImportEventsOnboard *importEvents =
    [storyBoard instantiateViewControllerWithIdentifier:@"importEventsOnboard"];
    UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController: importEvents];

    [self presentViewController:nav animated:YES completion: nil];
VC嵌入在导航控制器中

我是否应该在不通过导航的情况下直接将showViewController用于targetVC?或者pushViewController通过show transition显示VC的正确、健壮的方式是什么


提前感谢您的建议。

在上述代码中,您正在从ViewController“演示”一个新的NavigationController。为了执行推送/显示转换,需要在NavigationController的实例上执行该转换。如果当前ViewController已在NavigationController中,则可以将新的ViewController推送到当前NavigationController堆栈上。例如:

UIStoryboard *storyBoard = self.storyboard;

IDImportEventsOnboard *importEventsVC =
[storyBoard instantiateViewControllerWithIdentifier:@"importEventsOnboard"];

[self.navigationController pushViewController:importEventsVC animated:YES];

尝试显示importEvents控制器时,您是否已在导航控制器上?如果是这样,您可以将其推到导航堆栈上。