问题:自定义在选择表视图中的行时调用的segue视图控制器。
可能不起作用的不同解决方案: 1°从单个视图中创建所有自定义TableView,并将ViewController与每个Cell关联。 2°将NavigationController连接到TableView segue,并在选择行时选择NavigationController上的ViewController。
这是一种更有效率的方法吗?
答案 0 :(得分:1)
为了扩展上述内容,亚历山大的正确答案我想添加一段代码,解释如何按照他的说法去做。听起来你想根据所选的单元格自定义你正在调整的ViewController。
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
UITableViewCell *cell = (UITableViewCell *)sender;
if ([cell.textLabel.text isEqualToString:@"Hawaii"]) {
// Configure VC based on this case
}
}
您还可以使用与细胞相关的任何其他内容,例如与
相关联的对象NSIndexPath *indexPath = [self.tableView indexPathForCell:cell];
self.list[indexPath.row];
答案 1 :(得分:0)
使用prepareForSegue初始化ViewController。
由于segues可以从多个源触发,因此您可以使用segue和sender参数中的信息来消除应用中不同逻辑路径之间的歧义。例如,如果segue源自表视图,则sender参数将标识用户点击的表视图单元格。您可以使用该信息在目标视图控制器上设置数据。