gpt4 book ai didi

objective-c - 当数据为空时使用 Storyboard 在导航 Controller 上显示不同的 View

转载 作者:行者123 更新时间:2023-11-29 04:43:18 28 4
gpt4 key购买 nike

我有一个导航 Controller ,其中第一个 Controller 是 TableView Controller ,但是当数据库为空时,我想向用户显示一个 View ,要求用户提供一些信息来填充数据库并将其显示在导航 Controller 中对于 Storyboard中分配的 View ,我想我必须以编程方式执行此操作,但我是 iPhone 开发新手,老实说不知道从哪里开始。

最佳答案

具体操作方法如下。在 Storyboard中为 View Controller 创建一个新场景,用户将在其中提交信息(假设它称为 CollectInfoViewController)。然后创建从 tableview Controller 到 CollectInfoViewController 的模式 Segue。在属性检查器中,将 segue 的 Identifier 属性设置为“CollectInfo”,以便稍后识别它。

然后,当 TableView Controller 的 viewDidLoad 方法运行时,询问 TableView 委托(delegate)是否有任何行要显示。如果没有,请以编程方式执行到 CollectInfoViewController 的 segue。

- (void)viewDidLoad
{
[super viewDidLoad];

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

在您的 CollectInfoViewController 中,一旦用户输入了信息并且您已将其存储在数据库中,您就可以从 CollectInfoViewController 中调用以下命令来关闭该 View 。这将使用户返回到表格 View 。

[self dismissModalViewControllerAnimated:YES];

最后,回到表格 View Controller ,您可能需要使用收集到的新数据重新加载表格。您可以在 viewWillAppear 中执行此操作,当模态视图 Controller 关闭时将调用该函数。

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

关于objective-c - 当数据为空时使用 Storyboard 在导航 Controller 上显示不同的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10035563/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com