Core Animation

关键字

1.Core Animation的核心类是CALayer,通过对其属性进行配置可以展现不同的外观,这些属性包括位置,尺寸,图片内容,背景色,边界,阴影,以及角半径。

    CATextLayer *textLayer;
    textLayer = [CATextLayer layer];
    textLayer.anchorPoint = CGPointZero;//限定层的边界矩形的定位点,如在一个点normalized层坐标 - '(0,0)'是左下角边界矩形,'(1,1)'是右上角。默认为0.50.5),即边界矩形的中心。
    textLayer.position = CGPointMake(10, 6);//该层的边界矩形的定位点对准在superlayer的位置。默认为零点
    textLayer.zPosition = 100;//在其superlayer层的位置的Z分量。默认为零
    textLayer.fontSize = 24;
    textLayer.foregroundColor = CGColorGetConstantColor(kCGColorWhite);
View Code

CALayer:图层也是按层级关系组织,不是响应链的一部分。

2.CAAnimation .控制图层属性产生的动画。

    CABasicAnimation *posAnim = [CABasicAnimation animation]; 
    posAnim.fromValue = [NSValue valueWithPoint:center];
    posAnim.duration = 1.5;
    posAnim.timingFunction = tf;

    CABasicAnimation *bdsAnim = [CABasicAnimation animation];
    bdsAnim.fromValue = [NSValue valueWithRect:NSZeroRect];
    bdsAnim.duration = 1.5;
    bdsAnim.timingFunction = tf;

    CALayer *layer = [CALayer layer];
    layer.contents = image;
    layer.actions = [NSDictionary dictionaryWithObjectsAndKeys:
                     posAnim, @"position", bdsAnim, @"bounds", nil];
View Code

3.CATransaction用于多个动画的分组及同步,也可以临时禁用动画。

    [CATransaction begin];
    [view.layer addSublayer:layer];
    layer.position = randomPoint;
    layer.bounds = NSRectToCGRect(imageBounds);
    [CATransaction commit];
View Code

 

2.联系

待续….

版权声明:本文为博主原创文章,未经博主允许不得转载。

posted @ 2015-09-10 22:38  学计算机的那个  阅读(115)  评论(0编辑  收藏  举报