我收到错误:“EXC_BAD_ACCESS(code = 1,address = 0xffffffffffffffffff)”当我尝试设置UITableViewCell的委托时。
这是我的UITableViewCell:
protocol MyCellDelegate {
func onButtonClicked(theCell : MyCell)
}
class MyCell: UITableViewCell {
@IBOutlet weak var lblTitle: UILabel!
var delegate : MyCellDelegate?
UIViewController,包括使用tableview单元格的tableview:
func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell! {
let cell = tableView.dequeueReusableCellWithIdentifier("MyCell") as MyCell
cell.lblTitle.text = ...
cell.lblDescription.text = ...
cell.delegate = self // ***Crashes*** here
似乎相同的代码适用于Beta 3.任何人都可以提供帮助吗? (我不知道如何为Swift调试这种错误。因为所有命令如 po 根本不起作用。)
答案 0 :(得分:0)
添加@objc解决了这个问题。
@objc protocol MyCellDelegate {
func onButtonClicked(theCell : MyCell)
}