2012-04-05 96 views
0

我有一个的tableview控制器作为第一控制器导航控制器,但是当数据库为空时,数据为空我想要显示的用户,要求用户进行一些信息的视图填充数据库,并将其显示在导航控制器,而不是在故事板分配的观点,我想我会以编程方式做到这一点,但我是新来的iPhone开发和诚实不知道从哪里开始。显示导航控制器上的不同看法用故事板

回答

1

这里是你如何能做到这一点。在用户提交信息的视图控制器的故事板中创建一个新场景(假设它叫做CollectInfoViewController)。然后从您的tableview控制器创建一个模式 segue到CollectInfoViewController。在属性检查器中,将segue的标识符属性设置为“CollectInfo”,以便稍后识别它。

那么当你的tableview控制器的viewDidLoad方法运行,问表视图委托是否有任何行显示。如果没有,则以编程方式将Segue执行到CollectInfoViewController。

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    if ([self.tableView.dataSource tableView:self.tableView numberOfRowsInSection:0] == 0) { 
     [self performSegueWithIdentifier:@"CollectInfo" sender:self];  
    } 
} 

在你CollectInfoViewController,一旦用户输入的信息和已存储在你的数据库,那么你可以拨打下面从内CollectInfoViewController驳回了这一观点。这会将用户返回到tableview。

[self dismissModalViewControllerAnimated:YES]; 

最后,回到你的tableview控制器,你可能需要用一个已经收集到的新的数据重新加载表。您可以在viewWillAppear中执行此操作,该操作将在模态视图控制器关闭时调用。

- (void)viewWillAppear:(BOOL)animated 
{ 
    [super viewWillAppear:animated]; 
    [self.tableView reloadData]; 
} 
相关问题