Core Animation 与 CAAnimation 深入解析
1. Core Animation 基础
1.1 创建 CALayer
在开发中,图层(layers)和视图(views)一样,是按层次结构排列的,每个图层都可以有子图层。以 HypnosisView 为例,它和所有视图一样,本身已经有一个图层,现在要为其显式添加一个子图层。
首先,在 HypnosisView.h 中添加一个实例变量来保存即将创建的图层对象:
#import <UIKit/UIKit.h>
#import <QuartzCore/QuartzCore.h>
@interface HypnosisView : UIView {
CALayer *boxLayer;
UIColor *stripeColor;
float xShift, yShift;
}
@end
CALayer 的指定初始化方法是 init。在实例化图层后,需要设置其大小、位置(相对于其父图层)和内容。在 HypnosisView.m 中修改 initWithFrame: 方法来创建一个新图层并将其添加为 HypnosisView 图层的子图层:
- (id)initWithFrame:(CGRect)r
{
[super initWithFrame:r];
stripeColor = [[UIColor lightGrayColor] retain];
// 创
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



