无法访问 swift 中 TableViewcell class 中的协议函数
Unable to access protocol function in TableViewcell class in swift
我想访问 tableviewcell 中协议中存在的函数 class.But 无法执行。谁能帮我解决这个问题?
protocol updateLcodeCell: class {
func updateAfterSearchApiCall(searchTextArray: [String]?)
}
class PatientFormTableViewController: UIViewController{
var lcodeDelegate: updateLcodeCell?
func callApi(arr: [String]){
lcodeDelegate?.updateAfterSearchApiCall(searchTextArray: arr)}
}
在我的小区里class
class LcodeTableViewCell: UITableViewCell {
weak var lcodeDelegate: updateLcodeCell?
override func awakeFromNib() {
super.awakeFromNib()
self.lcodeDelegate = self
}
}
extension LcodeTableViewCell: updateLcodeCell{
func updateAfterSearchApiCall(searchTextArray: [String]?) {
searcApiResponseDataArray = searchTextArray
}
}
在您的 tableView indexPath.row
方法上调用您的委托
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: yourCellId, for: indexPath) as! YourCustomTableCell
cell.lcodeDelegate = self // here call your delegate
return cell
}
我想访问 tableviewcell 中协议中存在的函数 class.But 无法执行。谁能帮我解决这个问题?
protocol updateLcodeCell: class {
func updateAfterSearchApiCall(searchTextArray: [String]?)
}
class PatientFormTableViewController: UIViewController{
var lcodeDelegate: updateLcodeCell?
func callApi(arr: [String]){
lcodeDelegate?.updateAfterSearchApiCall(searchTextArray: arr)}
}
在我的小区里class
class LcodeTableViewCell: UITableViewCell {
weak var lcodeDelegate: updateLcodeCell?
override func awakeFromNib() {
super.awakeFromNib()
self.lcodeDelegate = self
}
}
extension LcodeTableViewCell: updateLcodeCell{
func updateAfterSearchApiCall(searchTextArray: [String]?) {
searcApiResponseDataArray = searchTextArray
}
}
在您的 tableView indexPath.row
方法上调用您的委托
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: yourCellId, for: indexPath) as! YourCustomTableCell
cell.lcodeDelegate = self // here call your delegate
return cell
}