代表不工作?
问题描述:
这里是我的协议定义。代表不工作?
protocol ActivityIndicatorDelegate: class {
func showIndicator()
func hideIndicator()
func barcodeError()
func categoryError()
func descError()
func reasonError()
func costError()
}
然后在我的自定义单元格类创建弱引用和我打电话委托功能
class ProductTableViewCell: UITableViewCell {
weak var indicatorDelegate: ActivityIndicatorDelegate?
@IBAction func stockUpdate(_ sender: Any) {
indicatorDelegate?.categoryError()
}
}
然后在我的UITableViewController类
我已经写了这一切在一个单一的文件。我在这里做错了什么?有人能帮我解决这个问题吗?提前致谢。
答
您不应在viewDidLoad
中设置代理人。这只会设置您刚刚创建的单元格的代表,而不是表格视图中的所有单元格。
你应该在celForRowAtIndexPath
做到这一点:
let cell = tableView.dequeue...
// configure the cell...
cell.indicatorDelegate = self
+0
谢谢扫地机。 –
你的电池的代表设置为你的'ProductTableViewController'实例? – ozgur
是的我viewdidload()我做到了。检查我更新的问题。 –