如何解决Swift 中带有按钮的 UITableViewCell
我有一个带有单元格的 UITableView,每个单元格都有产品信息、产品名称和产品 ID。每个单元格都有一个按钮,可将您带到另一个屏幕,其中包含产品的更多详细信息。 我的问题是,当我选择一个单元格时,由于 didSelectRowAtIndexPath,我已经获得了属于所选单元格的产品的名称和 ID,但是当我触摸单元格内的按钮时,我不会触发 didSelectRowAtIndexPath 并且我不能获取产品的 id,因此我无法进入下一个屏幕并显示与所选产品相关的信息。 我能做什么?
解决方法
我要问你的有助于解决这个问题的问题是:
您是否使用 IBAction
转换为按钮的动作触发器?
如果是,那么 IBAction 将位于 UITableViewCell
之下,其中应包含 IBOutlet
,用于保存名称、ID 和产品信息值的 UILabels
。
例如:
class SampleCell: UITableViewCell {
@IBOutlet var nameLabel: UILabel!
@IBOutlet var idLabel: UILabel!
@IBOutlet var informationLabel: UILabel!
@IBAction func action(button: UIButton) {
// you can obtain your information once the button is triggered before navigating
let id = self.idLabel.text
let name = self.nameLabel.text
let information = self.informationLabel.text
// navigate to new screen using delegate protocols
}
}
如果你没有像下面这样使用IBOutlets和IBActions,那么我建议你使用它们,并为产品单元创建一个自定义的TableViewCell。这是访问您的手机信息的最简单方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。