使用Object为ViewController瘦身

#本人有若干成套学习视频, 可试看! 可试看! 可试看, 重要的事情说三遍 包含Java, 数据结构与算法, iOS, 安卓, python, flutter等等, 如有需要, 联系微信tsaievan.

ViewController在开发的过程中, 可能因为业务需求地增多, 变得越来越庞大, 这个时候, 我们需要为ViewController瘦身, 这时候我们可以用到一个特殊的"控件"-----Object

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3UXJPPBA-1575476463263)(https://upload-images.jianshu.io/upload_images/2868984-f113d55139964fd9.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

官方文档对这个"控件"的解释是:

Turn this object into an instance of a specific class using the custom class inspector.
This object is often used to instantiate custom controllers that are separate from view controllers, yet still maintain action and outlet relationships to views.

简单来说就是自定义的控制器, 是从 view controllers 分离出来的, 分担了一部分 view controllers 的功能, 用于处理view的事件处理和属性等

在使用Object时, 就跟使用控件一模一样, 把它拖到控制器中, 然后与自己的类关联.
Object

上图就是一个object控件, 然后关联了自己的类, 并且拖线到控制器中:

image.png

此时, 控制器是持有这个类的. 然后我可以将控制器中处理按钮点击事件的逻辑, 全部转移到object中去执行, 如果有数据要回传到控制器中, 那么可以用代理回调. 或者object弱持有控制器.

控制器和Object之间的关系如下图:

image.png

这实际上是将代码分门别类, object去处理具体的业务逻辑, 不同的逻辑由不同的object来处理, 而控制器相当于做一个业务分发:

image.png

#####PS:部分内容借鉴自<iOS UI 开发捷径>一书, 侵删

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值