IOS中的委托模式

本文详细介绍了iOS开发中委托模式的应用,包括三层架构中的持久层、业务逻辑层和表示层如何通过定义和实现delegate协议来协作工作。同时,还探讨了UITableView与UIViewController之间的委托关系,以及UIApplication如何通过delegate进行启动配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在IOS中通过存在着很多委托模式的应用。


在iOS中使用三层架构:持久层,业务逻辑层,表示层。

业务逻辑层定义BusinessLayerDelegate,表示层中实现业务逻辑层中的delegate协议(在业务逻辑层中声明属性id<BusinessLayerDelegate> delegate),持久层定义PersistentLayerDelegate,业务逻辑层实现持久层的delegate协议(在持久层声明属性id<PersistentLayerDelegate> delegate),当持久层查询完毕,失败则在block中调用delegate业务逻辑层中实现的error的delegate方法,业务逻辑层中error的delegate方法则调用表示层中error的delegate方法,在表示层中可以对这条信息进行处理,提醒用户。

view

在tableview中delegate是viewcontroller,当view加载完毕时,会回调成功加载的block,在block中调用view controller中实现的delegate的成功加载代码,进行处理。

tableview的datasource协议,tableview视图将要加载时调用实现datasource协议的对象的数据方法,获得要显示几行,什么内容等信息。

delegate通过回调进行调用,datasource主动去调用数据方法。

application

从UIApplication.h中看来,iOS在main.m中启动,通过

int UIApplicationMain(int argc, char *argv[],NSString *principalClassName,NSString *delegateClassName);

方法将delegate传给UIApplication,当应用launch,finishLaunch时会回调delegate中对应的方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值