在Swift中委托不同类型的属性

前端之家收集整理的这篇文章主要介绍了在Swift中委托不同类型的属性前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
好的,我们有UIScrollView声明:
  1. protocol UIScrollViewDelegate: NSObjectProtocol { ... }
  2. class UIScrollView: UIView {
  3. ...
  4. weak var delegate: UIScrollViewDelegate?
  5. ...
  6. }

然后UITableView与委托变体?

  1. protocol UITableViewDelegate: NSObjectProtocol,UIScrollViewDelegate { ... }
  2. class UITableView: UIScrollView {
  3. ...
  4. weak var delegate: UITableViewDelegate?
  5. ...
  6. }

Apple如何做到这一点?当我做我的

  1. protocol MyScrollViewSubclassDelegate: NSObjectProtocol,UIScrollViewDelegate { ... }
  2. class MyScrollViewSubclass: UIScrollView {
  3. ...
  4. weak var delegate: MyScrollViewSubclassDelegate?
  5. ...
  6. }

我使用’MyScrollViewSubclassDelegate’类型获得Property’委托’不能覆盖类型为“UIScrollViewDelegate?”的属性.

我偶然发现了几次,我找到的唯一解决方法就是将我的财产称为customDelegate或其他任何你喜欢的东西.

确实可以称之为委托但是嘿!

猜你在找的Swift相关文章