所以我設定了一個協議,以便我可以在我的tableviewcontroller中使用按鈕,但它沒有作業。我知道我設定的協議是正確的(因為當我嘗試時,列印陳述句被呼叫了),但是函式沒有在tableviewcontroller中被呼叫。下面是一些代碼:
protocol CommentCellDelegate
{
func reply(index: Int)
}
class CommentCell: UITableViewCell:
{
var delegate: CommentCellDelegate?
var index: IndexPath?
/Other outlets omitted for brevity?
@IBOutlet var replyButton: UIButton!
override func awakeFromNib()
{
super.awakeFromNib()
//初始化代碼。
}
@IBAction func reply(_ sender。Any)
{
delegate?.reply(index: index!.row)
}
}
extension commentsTableViewController: CommentCellDelegate:
{
func reply(index: Int)
{
print("button tpapped"/span>)
let comment = comments[index] 。
globalComment = comments
print(globalComment.comment!)
self.performSegue(withIdentifier: "commentVC"/span>, sender: self)
}
}
uj5u.com熱心網友回復:
在cellForRowAt內確保設定委托
let cell = ........
cell.delegate = self
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/328648.html
標籤:
