Swift中代理的定义使用
发布时间:2020-12-14 06:56:21 所属栏目:百科 来源:网络整理
导读:Demo----- 第一步:// 定义协议 协议名自己定@objc protocol MyViewDelegate: NSObjectProtocol { // 什么都不修饰默认必须实现,加上optional可选实现 /// 关闭控制器的代理方法 func myViewDelegateMethod(param: NSString); }第二步: /** 声明代理 代理 要
Demo-----> 第一步: // 定义协议 协议名自己定 @objc protocol MyViewDelegate: NSObjectProtocol { // 什么都不修饰默认必须实现,加上optional可选实现 /// 关闭控制器的代理方法 func myViewDelegateMethod(param: NSString); } 第二步: /** 声明代理 代理 要使用 weak 属性关键字 swift 属性默认都是strong 代理同样也需要使用weak */ weak var myViewDelegate: MyViewDelegate? 第三步: // 在需要的地方调用代理方法 myViewDelegate?.myViewDelegateMethod(); 此时切换类 第四步: // 在需要接收代理的地方设置代理 myView.myViewDelegate = self; 第五步: // MARK: // MARK: 代理方法实现 报错代表必须实现的代理方法未实现 extension 切换的类名: MyViewDelegate { func myViewDelegateMethod(param: NSString) { print("切换的类名中实现MyView的代理方法,得到的参数是:(param)"); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |