答案 0 :(得分:2)
答案 1 :(得分:1)
@IBOutlet
tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
时。在这里,您可以使用[tableView cellForRowAtIndexPath:indexPath]
[cell.yourButton setTitle...]
答案 2 :(得分:1)
如果您要将导航控制器设置到根视图控制器中并将想要访问按钮的视图控制器作为其顶视图控制器,那么您可以在点击单元格时执行以下操作:
if let topVC = navigationController?.topViewController as? MyButtonViewController {
topVC.button1Name.setTitle("New Title", forState: .Normal)
}
然后,您可以使用以下内容隐藏顶视图控制器上的导航栏:
override func viewWillAppear(animated: Bool) {
navigationController?.setNavigationBarHidden(true, animated: animated)
}
override func viewWillDisappear(animated: Bool) {
navigationController?.setNavigationBarHidden(false, animated: animated)
}
答案 3 :(得分:0)
您可以使用单个NavC,而不是使用两个导航控制器,然后使用两个按钮作为根视图控制器创建视图控制器。然后按下按钮时,加载相应的表视图控制器。此外,如果您的表视图控制器具有相同的数据源,那么您可以使用单个表视图控制器本身。
然后,根据按下的按钮,您可以按下相应的表视图控制器,但在prepareForSegue
跟踪按下了哪个按钮,以便在表视图控制器中选择单元格时可以更改其标题。
要从表视图控制器传递选定的单元格详细信息,您可以使用视图控制器可以实现的委托,表视图控制器将调用并传递选定的单元格详细信息。
所以简而言之。
didSelectRowWithIndexPath
使用委托传递选定的单元格信息并弹出视图控制器。我有另一个我在这里上传的解决方案。除了具有两个按钮的ViewController之外,它不包含任何自定义视图控制器。它利用了segues和unwind segues。