我对Swift和Xcode很新,所以这个问题对某些人来说可能听起来很简单。
我在自定义表格视图单元格中有一个按钮和一个标签。我正在尝试在检测到按钮单击时更改标签文本的值。
目前,我正在设置button.tag = indexPath.row
(如下面的代码所示),我在btn_click
函数中将其捕获。
cell.btn.tag = indexPath.row
cell.btn.addTarget(self, action: "btn_click:", forControlEvents: UIControlEvents.TouchUpInside)
如何访问与单击按钮相同的单元格中包含的标签,以便更改标签文本的值?我可以使用indexPath.row
返回正确的标签对象吗?
答案 0 :(得分:1)
您不需要使用标记来实现目标,在CustomTableViewCell
类中,您必须为按钮设置操作,并在单元格内部标签的出口处,如下所示:
class CustomTableViewCell: UITableViewCell {
@IBOutlet weak var label: UILabel!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
// action to tap the button and change the label text
@IBAction func tappedButton(sender: AnyObject) {
self.label.text = "Just Clicked"
}
}
您可以在界面生成器中手动设置按钮的操作和标签的插座,您不需要在代码中设置。
然后,当您在单元格中的按钮内点击时,标签仅在单元格内部发生变化。
我希望这对你有所帮助。