Я пытаюсь сделать протокол в UITableViewCell
классе, но когда я заявляю о своем делегатом, я получаю сообщение об ошибке в обоих required init?(coder aDecoder: NSCoder)
и override init(style: UITableViewCellStyle, reuseIdentifier: String?)
свойство «self.delegate» не инициализируется при super.init
Ошибка: - Property 'self.delegate' not initialised at super.init
Это мой подкласс: -
import UIKit
protocol tableCellBtnActionDelegate{
func removeRowAtIndex(_: Int)
}
class FriendsListTableViewCell: UITableViewCell {
@IBOutlet weak var friendListAddBtn: UIButton!
var usersId : String!
var buttonText : String!
var indexPath : Int!
let delegate : tableCellBtnActionDelegate!
override func awakeFromNib() {
super.awakeFromNib()
friendListAddBtn.layer.cornerRadius = 4
friendListAddBtn.layer.backgroundColor = UIColor(red: 121.0/255.0, green: 220.0/255.0, blue: 1, alpha: 1).CGColor
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
override func setSelected(selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
}
override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
}
}
* Вы можете * установить значение в 'let' + неявно развернутый опционально : в init. ОП просто этого не делает. – Moritz
@EricD ty для комментариев, это делает ответ более полным; Я просто не верю, что он хочет установить делегата в init –
Обновите свой ответ, чтобы предотвратить отрицательные голоса! –