我想将显示更改为 UIViewController,该 UIViewController 在情节提要上有视图控制器,而 UIViewController 类在情节提要上没有视图控制器。情节提要中没有segue...
问问题
489 次
2 回答
0
我不完全确定我理解你想要做什么,但我想你是在问如何从故事板加载视图控制器,而不使用 segue,从视图控制器中的方法加载故事板。
首先,在故事板中,选择要加载的视图控制器,然后打开 Identity Inspector。设置视图控制器的 Storyboard ID。看起来您想加载一个MapViewController
,所以假设您将情节提要 ID 设置为map
。
在您的代码中,您可以像这样加载视图控制器:
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
MapViewController *mapViewController = [storyboard instantiateViewControllerWithIdentifier:@"map"];
一旦你有了对视图控制器的引用,你就可以设置它的属性或者给它发送消息。然后,您可以以任何您想要的方式显示它——可能通过将它推到导航控制器上,或者通过呈现它,或者通过将它设置为窗口的根视图控制器。
于 2012-10-19T06:20:24.490 回答
0
像这样:
在您的 AppDelegate.m 中进行快速设置:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
ViewController *sourceViewController = [[ViewController alloc] init];
UINavigationController * nav = [[UINavigationController alloc] initWithRootViewController:sourceViewController];
[self.window setRootViewController:nav];
return YES;
}
在上面的示例中,将ViewController
类替换为您自己的类sourceViewCntroller
- (IBAction) didPressMyButton {
NewViewController* newVC = [[[NewViewController alloc] init] autorelease];
[self.navigationController pushViewController:newVC animated:YES];
}
将此操作连接到情节提要上的按钮或以任何方法嵌入视图更改。您需要先设置 UINavigation 控制器。
于 2012-10-18T10:17:49.740 回答