0

在此处输入图像描述我想将显示更改为 UIViewController,该 UIViewController 在情节提要上有视图控制器,而 UIViewController 类在情节提要上没有视图控制器。情节提要中没有segue...

4

2 回答 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 回答