IOS开发图层CALayer的基本属性使用

  1. 利用图层设置裁剪圆形头像,该方法比用图形上下文性能高很多

- (void)imageLayer
{
    // 圆形裁剪
    _imageView.layer.cornerRadius = 50;
    
    // 超出layer边框的全部裁剪掉
    _imageView.layer.masksToBounds = YES;
    //设置边框颜色
    _imageView.layer.borderColor = [UIColor whiteColor].CGColor;
    //设置边框宽度
    _imageView.layer.borderWidth = 2;
    
}

2.图层的另外一些属性

- (void)viewLayer
{
    // 设置阴影透明度
    _redView.layer.shadowOpacity = 1;
    
    // 设置阴影颜色
    _redView.layer.shadowColor = [UIColor yellowColor].CGColor;
    
    // 设置阴影圆角半径
    _redView.layer.shadowRadius = 10;
    
    // 设置圆角半径
    _redView.layer.cornerRadius = 50;
    
    // 设置边框半径
    _redView.layer.borderColor = [UIColor whiteColor].CGColor;
    
    // 设置边框半径
    _redView.layer.borderWidth = 2;
}

3.利用图层改变形变

        // 缩放
        _imageView.layer.transform = CATransform3DMakeRotation(M_PI, 1, 1, 0);
      //   平移
        _imageView.layer.transform = CATransform3DMakeTranslation(200, 200, 0);
        
   //      缩放
        _imageView.layer.transform = CATransform3DMakeScale(0.5, 0.5, 1);
     
    // 利用KVC改变形变
        
     NSValue *rotation = [NSValue valueWithCATransform3D:CATransform3DMakeRotation(M_PI, 1, 1, 0)];

        [_imageView.layer setValue:rotation forKeyPath:@"transform"];
        
        [_imageView.layer setValue:@M_PI forKeyPath:@"transform.rotation"];

        [_imageView.layer setValue:@0.5 forKeyPath:@"transform.scale"];
        
        // 平移x轴
        [_imageView.layer setValue:@200 forKeyPath:@"transform.translation.y"];


你可能感兴趣的:(IOS开发图层CALayer的基本属性使用)