【发布时间】:2015-01-02 15:28:59
【问题描述】:
我有一个 push segue,用于将数据从 uitableview 单元格传输到文本字段。该应用程序计划是用户将数据输入到文本字段中,然后他们将单击一个按钮,它将模态转移到表格视图控制器,然后他们将选择一个 uitableviewcell 并将其传输回原始视图他们在文本字段中输入了数据,并且 tableviewcell 内容将输入到同一视图上的不同文本字段中。但是我遇到了从原始文本字段中删除数据并创建另一个视图的问题。
所以现在,我尝试使用展开转场,所以现在之前输入的数据正在显示,但表格视图单元格没有像以前那样填充。
这是推送数据的代码-
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"showRecipeDetail"]) {
NSIndexPath *indexPath = nil;
Recipe *recipe = nil;
if (self.searchDisplayController.active) {
indexPath = [self.searchDisplayController.searchResultsTableView indexPathForSelectedRow];
recipe = [searchResults objectAtIndex:indexPath.row];
} else {
indexPath = [self.tableView indexPathForSelectedRow];
recipe = [recipes objectAtIndex:indexPath.row];
}
PersonDetailTVC *destViewController = segue.destinationViewController;
destViewController.recipe = recipe;
[self dismissViewControllerAnimated:YES completion:nil];
}
}
这是展开转场的代码 -
- (IBAction)unwindFromDetailViewController:(UIStoryboardSegue *)segue
{
// ViewController *detailViewController = [segue sourceViewController];
NSLog(@"%@", segue.identifier);
}
【问题讨论】:
-
与其在控制器之间创建依赖关系并尝试在它们之间传递数据,不如考虑创建一个单独的对象来代表您的应用程序的数据模型。当控制器想要更改某些内容时,请更新模型。当控制器需要显示某些内容时,请向模型询问其当前值。
-
好的,你知道我该如何开始吗?
标签: ios xcode uitableview segue