22、模板方法与策略模式在开发中的应用

模板方法与策略模式在开发中的应用

1. 模板方法模式

模板方法模式在框架设计中十分常见,它是代码复用的基础技术。该模式允许框架设计者将算法中特定于应用程序的元素留给应用程序处理,是提取框架类中常见行为的有效手段。这种方法有助于提高可扩展性和可复用性,同时保持不同类之间的松散耦合。

在Cocoa Touch框架中,也采用了模板方法模式,虽然不像委托模式那么普遍,但仍能在框架的各个地方找到相关的框架类。下面介绍两个常见的模板方法示例。

1.1 UIView类中的自定义绘图

自iOS 2.0起,UIView类中有一个方法允许应用程序通过重写它来执行自定义绘图:

- (void)drawRect:(CGRect)rect

该方法的默认实现为空。如果UIView的子类需要绘制自己的视图,则可以重写此方法,因此它是一个钩子方法。

当需要更改屏幕上的视图时,此方法将被调用。框架会处理所有底层的繁琐工作以实现这一功能。UIView处理绘图过程的一部分就是调用 drawRect: 方法。如果该方法中有代码,也会一并执行。子类可以使用Quartz 2D函数 UIGraphicsGetCurrentContext 来获取框架中任何可用2D元素的当前图形上下文。

客户端应用程序还可以通过调用UIView的方法手动激活绘图过程:

- (void)setNeedsDisplay
<
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值