2

我只是想在带有情节提要的模态控制器上添加一个导航栏(带有一些导航栏按钮)。

使用 XIB 以编程方式,它看起来像这样:

SDMapController *mapController = [[SDMapController alloc] initWithNibName:@"SDMapController" bundle:nil];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:mapController];

[self presentModalViewController:navigationController animated:YES];

但我不知道如何用 Storyboard 来处理它。-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender我想我必须在该方法上实现一些代码,但由于对象的destinationController属性segue是只读的,我真的不知道该怎么做。

任何想法 ?

4

1 回答 1

3

只有当您想将一些数据传递给您呈现的视图控制器时,您才必须实现为 segue 做准备。否则,您可以将其留空。View Controller 的呈现来自 Interface Builder。您添加一个带有根视图控制器的导航控制器,并对导航控制器进行 segue(ctrl + 拖动)。将 segue 类型设置为模态,并给它一个 ID。您可以通过调用从代码中触发此 segue [self perforSegueWithIdentiefier:@"MySegueID"];。如果您从按钮或表格视图单元格中拖动 segue,则在您点击它时会自动触发它,而无需调用此方法。正如我所说,在该prepareForSegue方法中,segue.destinationViewController将呈现导航控制器。topViewController如果需要,您可以访问它并将一些数据传递给它。

于 2013-01-03T23:33:24.130 回答