2

我的应用程序中只有两个 ViewController

故事板设置:-

在此处输入图像描述

我有一个从我ViewController的到 MainTableViewController 直接连接的推送 segue。我希望我的应用程序在用户输入正确的密码后立即重定向到主视图。

这是我的代码: -

- (IBAction)checkInput
{

    NSMutableString *aString = [NSMutableString stringWithFormat:firstDigit.text];
    [aString appendFormat:secondDigit.text];
    [aString appendFormat:thirdDigit.text];
    [aString appendFormat:fourthDigit.text];
    if([aString isEqualToString:@"1111"])
    {
        result.text = @"Right Password";
        //UIStoryboard *sb = [UIStoryboard storyboardWithName:@"MainStoryBoard" bundle:nil];
        //UITableViewController *tvc = [self.storyboard instantiateViewControllerWithIdentifier:@"mainTableViewController"];
        //[self.navigationController pushViewController:tvc animated:YES];
        //[self removeFromParentViewController];
        [self performSegueWithIdentifier:@"mainSegue" sender:self];
    }
    else {
        result.text = @"Wrong Password";
    }
    NSLog(@"%@", aString);
}

checkInput一旦用户输入最后一位数字,就会被调用。我在Editing did End我的第四个 TextField 中调用它。

任何帮助将非常感激。谢谢

4

2 回答 2

4

诀窍是这些 segues 仅在您的视图控制器“嵌入”在 UINavigation 控制器中时才起作用。选择您的第一个 VC,然后选择(从顶部菜单中)编辑器 > 嵌入 > 导航控制器。

它应该自动将自己设置为初始 VC,但请仔细检查。

请注意,在这张图片中,我展示了如何操作,但它已经完成,因此您可以看到它自动将我的主 VC 连接到导航控制器。 嵌入导航控制器

于 2012-07-11T06:05:44.000 回答
2

另一个想法是将主视图嵌入导航视图控制器并将其用作初始 vc。然后在需要时将密码 vc 模式显示在主 vc 之上。这种方式的另一个优点是您现在可以使用目前popToViewController:animated:无法使用的方式。

initial vc ----> main vc
                   |
                   |
                 modaly
                   |
                   |
              pass code vc
于 2012-07-11T06:11:47.683 回答