Swift代理的使用 協議規定了用來實現某一特定功能所必需的方法和屬性。 任意能夠滿足協議要求的類型被稱為遵循(conform)這個協議。 類,結構體或枚舉類型都可以遵循協議,並提供具體實現來完成協議定義的方法和功能。 1、申明代理 // 協議內容 @objc protocol TLSelectVi ...
Swift代理的使用
協議規定了用來實現某一特定功能所必需的方法和屬性。
任意能夠滿足協議要求的類型被稱為遵循(conform)這個協議。
類,結構體或枚舉類型都可以遵循協議,並提供具體實現來完成協議定義的方法和功能。
1、申明代理
// 協議內容
@objc protocol TLSelectViewDelegate{
func TLSelectViewDidSelected() //必須方法
@objc optional func TLSelectViewQuit() //可選方法
}
2、定義一個代理屬性
weak var delegate: TLSelectViewDelegate?
3、使用者,首先加上
class TaskListViewController: UIViewController,TLSelectViewDelegate {
4、設置代理和實現
let cell: TLTaskListCell = tableView.dequeueReusableCell(withIdentifier: "TLTaskListCell") as! TLTaskListCell
cell.selectionStyle = .none;
cell.delegate = self
5、在需要的地方直接調用
if let delegateOK = self.delegate{
delegateOK.TLSelectViewDidSelected()
}