当弹出窗口没有显示导航栏时,带有uinvaigationcontroller的viewcontroller

时间:2013-05-21 05:39:55

标签: cocoa-touch uiviewcontroller uinavigationcontroller uistoryboard uistoryboardsegue

我正在使用故事板。在故事板上我有一个“主页”uiviewcontroller,它有一个按钮,当点击时会调用另一个uiviewcontroller(choosewinner)来弹出。但是这个选择vn的vc附带了一个uinavigation控制器,原因是它可以轻松地来回走动。现在我可以将uiview称为模态弹出窗口,但它不显示它的uinavigation。

这是点击按钮时调用的方法。想法?

- (void)updateWinner{
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];

    MatchWinnerViewController *vc = [storyboard instantiateViewControllerWithIdentifier:@"WinnerViewController"];

    vc.modalPresentationStyle = UIModalPresentationFormSheet;
    vc.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
    [self presentViewController:vc animated:NO completion:nil];
    vc.view.superview.autoresizingMask = UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin;
    vc.view.superview.bounds = CGRectMake(0, 0, 800, 600);
}

1 个答案:

答案 0 :(得分:0)

即使你在故事板中附加了MatchWinnerViewController UINavigationController,如果你想用UINavigationController模态地呈现它,你需要提供导航控制器作为方法instantiateViewControllerWithIdentifier的参数。

原因是对于模态显示,它采用根视图控制器,导航控制器也是视图控制器。

相关问题