选择视图控制器

时间:2009-06-07 14:36:39

标签: iphone cocoa-touch uiviewcontroller

我有一个UIViewController(ViewController1),它显示了数据库的内容。 如果之前没有加载数据库,我想显示另一个视图控制器(ViewController2)。

因此,当用户输入ViewController1并且之前未加载数据库时,我想将他带到ViewController2而不是ViewController1。

这样的事情:

@implementation ViewController1

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];

    if (isDatabaseLoaded) {show contents of ViewController1;}
    else {take user to ViewController2;}
}

我该怎么办?最优雅的方法是什么?

提前谢谢。

2 个答案:

答案 0 :(得分:2)

您有几种不同的选择。

  1. 您可以推送到ViewController2。

    [ViewController1.navigationController pushViewController:ViewController2 animated:YES];

  2. 您可以展示ViewController2

    [ViewController1 presentModalViewController:ViewController2 animated:YES];

  3. 您可以简单地将ViewController1的视图换成ViewController2的视图

    ViewController1.view = ViewController2.view;

答案 1 :(得分:0)

if (!isDatabaseLoaded)
    [self.navigationController pushViewController:ViewController2 animated:YES];