1.UIImage可以加载多张图片,并按指定时间间隔依次显示多张图片,这就可以非常方便地实现动画效果。+animatedImageNamed:duration:,根据指定的图片名来加载系列图片,例如传入butterfly名,会自动加载butterfly0,butterfly1,butterfly2等等图片。
+animatedImageWithImages:duration:,该方法需要传入一个NSArray作为多张动画图片。
2.Quartz 2D 绘图:
Quartz 2D 绘图的核心API是CGContextRef,该API专门用于绘制各种图形。
使用Quartz 2D 绘图的关键步骤有两步:获取CGContextRef;调用CGContextRef的方法进行绘图。
自定义UIView时获取CGContextRef:
开发自定义UIView的方法是,开发一个继承UIView的子类,并重写该UIView的drawRect:方法。当该UIView每次显示出来时,或该UIView的内容需要更新时,系统都会自动调用该UIView的drawRect:方法。在调用drawRect:方法之前,系统会自动配置绘图环境,因此程序只要通过如下函数即可获取CGContextRef绘图API:CGContextRef ctx = UIGraphicsGetCurrentContext();
创建位图时获取CGContextRef:
UIGraphicsBeginImageContext(CGSizeMake(320,480));//创建内存中的图片
CGContextRef ctx = UIGraphicsGetCurrentContext();//获取向内存中图片执行绘图的CGContextRef
Quartz 2D 不是面向对象的,是面向过程的,提供了大量函数来完成绘图。
网友评论