[英]UITableView: How to change cell height dynamically when a button is clicked in it? Swift
[英]How to change button name when cell selected in UITableView in swift?
@IBOutlet
tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
。 在这里,您可以使用[tableView cellForRowAtIndexPath:indexPath]
获取单元格 [cell.yourButton setTitle...]
如果要将导航控制器置于根视图控制器中,然后将希望从中访问按钮的视图控制器作为其顶部视图控制器,那么在轻按单元格时可以执行以下操作:
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)
}
代替使用两个导航控制器,您可以使用单个NavC,然后使用两个按钮作为根视图控制器来使您的视图控制器成为可能。 然后,当按下按钮时,您将加载适当的表视图控制器。 同样,如果您的表视图控制器具有相同的数据源,那么您可以使用单个表视图控制器本身。
然后,根据按下哪个按钮,您按下适当的表视图控制器,但是在prepareForSegue
跟踪按下的按钮,以便在表视图控制器中选择单元格时可以更改其标题。
要从表视图控制器传递选定的单元格详细信息,可以使用视图控制器可以实现的委托,表视图控制器将调用并传递选定的单元格详细信息。
简而言之,做到这一点。
didSelectRowWithIndexPath
使用委托传递所选的单元格信息并弹出视图控制器。 我有另一个解决方案,我已经在这里上传了。 除了具有两个按钮的ViewController之外,它不包含任何自定义视图控制器。 它利用了segues和unwind segues。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.