iOS学习笔记: “刮刮乐”效果 1
2016-06-29 本文已影响291人
Barefoot_lq
参考文章:iOS基础-小Demo--刮开涂层(刮刮乐效果) - 简书
No.11.设置遮挡在外面的Image;
No.22.刮开后,显示的文字Label;
No.33.在touchesMoved方法里面实现操作
分析:根据触摸点,设置图片的清除点;
新知识:
1.常用的图片缩放方式
a.创建一个位图的上下文,并将其设置为当前上下文;UIGraphicsBeginImageContext();/UIGraphicsBeginImageContextWithOptions(CGSize size, BOOL opaque, CGFloat scale);
size:创建位图上下文的大小;opaque:透明度开关;scale:缩放因子;
b.获取当前的上下文;
UIGraphicsGetCurrentContext();
c.获取当前图像;
UIGraphicsGetImageFromCurrentImageContext();
d.关闭位图上下文;
UIGraphicsEndImageContext();
2.renderInContext:将view绘制到图形上下文中;
注:如果循环多次创建view,内存会暴涨,导致崩溃。需要在[view.layer renderInContext:context]之后加一句view.layer.contents = nil,以清除layer绘过后的缓存。
延伸:利用新知识可做“截屏功能”,参考文章:iOS开发UI篇