0

我有一个带有UINavigationController. 导航控制器的根视图控制器称为 rootViewController。

我正在尝试以编程方式将视图控制器(取决于其他条件)更改为另一个名为loginViewController.

我正在尝试在viewDidLoadrootViewController 中执行此操作,如下所示:

- (void)viewDidLoad
{

    [super viewDidLoad];

    loginViewController *viewController = [[loginViewController alloc] init];

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

}

我没有收到任何错误,但它不起作用。

它只是使用顶部导航返回按钮加载导航控制器,但屏幕的其余部分是黑色的。就像它没有加载任何视图控制器一样。

我试图弄清楚我做错了什么。

对此的任何帮助都会很棒。

谢谢

4

2 回答 2

5

首先在情节提要中添加 loginViewController 类,并将 ViewController 类连接到 loginViewController 类,并将标识符名称命名为“identifier_Name”。

- (void)viewDidLoad
{

    [super viewDidLoad];
    [self performSegueWithIdentifier:@"identifier_Name" sender:nil];
}

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if([[segue identifier] isEqualToString:@"identifier_Name"])
    {
        loginViewController *viewController = [segue destinationViewController];
    }
}
于 2013-02-26T09:21:52.180 回答
0

如果您正在使用情节提要,请在情节提要中创建登录视图,使用 segue 将您的 rootVC 链接到 loginVC,选择一个标识符(例如:“goToLogin”)。然后进入登录视图,并使用:

[self performSegueWithIdentifier:@"goToLogin" sender:self];
于 2013-02-26T09:20:33.860 回答