Swift中代理的定义使用

前端之家收集整理的这篇文章主要介绍了Swift中代理的定义使用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Demo----->

  1. 第一步:
  2. // 定义协议 协议名自己定
  3. @objc protocol MyViewDelegate: NSObjectProtocol {
  4.  
  5. // 什么都不修饰默认必须实现,加上optional可选实现
  6. /// 关闭控制器的代理方法
  7. func myViewDelegateMethod(param: NSString);
  8. }
  9.  
  10. 第二步:
  11. /**
  12. 声明代理 代理 要使用 weak 属性关键字
  13. swift 属性默认都是strong 代理同样也需要使用weak
  14. */
  15. weak var myViewDelegate: MyViewDelegate?
  16.  
  17. 第三步:
  18.  
  19. // 在需要的地方调用代理方法
  20. myViewDelegate?.myViewDelegateMethod();
  21.  
  22. 此时切换类
  23.  
  24. 第四步:
  25.  
  26. // 在需要接收代理的地方设置代理
  27. myView.myViewDelegate = self;
  28.  
  29. 第五步:
  30.  
  31. // MARK:
  32. // MARK: 代理方法实现 报错代表必须实现的代理方法未实现
  33. extension 切换的类名: MyViewDelegate {
  34. func myViewDelegateMethod(param: NSString) {
  35. print("切换的类名中实现MyView的代理方法,得到的参数是:\(param)");
  36.  
  37. }
  38. }

猜你在找的Swift相关文章