CALayer 一些简单的小例子

    //设定calayer
    self.view.layer.backgroundColor=[UIColor orangeColor].CGColor;
    self.view.layer.cornerRadius=10.0;
    self.view.layer.frame=CGRectInset(self.view.layer.frame, 20, 20);
    
    //设定边框层
    CALayer *sublayer=[CALayer layer];
    sublayer.backgroundColor=[UIColor grayColor].CGColor;
    sublayer.shadowOffset=CGSizeMake(0, 3);
    sublayer.shadowRadius=5.0;
    sublayer.shadowColor=[UIColor blackColor].CGColor;
    sublayer.frame=CGRectMake(30, 30, 128, 192);
    [self.view.layer addSublayer:sublayer];
    //给层添加内容
    sublayer.contents=(id)[UIImage imageNamed:@"27_101230095023_1_lit.jpg"].CGImage;
    sublayer.borderColor=[UIColor blackColor].CGColor;
    sublayer.borderWidth=2.0;
    
    
    //下列为实现圆角子层,利用两个层来实现
    CALayer *subcalayer=[CALayer layer];
    subcalayer.backgroundColor=[UIColor blueColor].CGColor;
    subcalayer.shadowOffset=CGSizeMake(0, 3);
    subcalayer.shadowRadius=5.0;
    subcalayer.shadowColor=[UIColor blackColor].CGColor;
    subcalayer.frame=CGRectMake(160, 30, 128, 192);
    subcalayer.borderColor=[UIColor blackColor].CGColor;
    subcalayer.borderWidth=2.0;
    subcalayer.cornerRadius=10.0;
    [self.view.layer addSublayer:subcalayer];//添加子层方法
    
    CALayer *imageLayer=[CALayer layer];
    imageLayer.frame=subcalayer.bounds;
    imageLayer.cornerRadius=10.0;
    imageLayer.contents=(id)[UIImage imageNamed:@"27_101230095023_1_lit.jpg"].CGImage;
    imageLayer.masksToBounds=YES;//设置成圆角
    [subcalayer addSublayer:imageLayer];//在子层中加一个层;
    
    //添加子image layer  边框 圆角 阴影
    
    UIImage *image=[UIImage imageNamed:@"27_101230095023_1_lit.jpg"];
    CALayer *subImageLayer=[CALayer layer];
    subImageLayer.frame=CGRectMake(30, 240, 128, 192);
    subImageLayer.contents=(id)image.CGImage;
    subImageLayer.shadowOffset=CGSizeMake(0, 3);//阴影偏移量
    subImageLayer.shadowColor=[UIColor blackColor].CGColor;
    subImageLayer.shadowRadius=10.0;
    subImageLayer.shadowOpacity=0.8;
    [self.view.layer addSublayer:subImageLayer];
//    subImageLayer.borderColor=[UIColor grayColor].CGColor;
//    subImageLayer.borderWidth=2.0;
    subImageLayer.masksToBounds=YES;//隐藏边框,就是去了阴影效果
    subImageLayer.cornerRadius=10.0;
    
    
    //image layer  边框 圆角 阴影
    //阴影层
    CALayer *shadowLayer=[CALayer layer];
    shadowLayer.frame=CGRectMake(160, 240, 128, 192);
    shadowLayer.backgroundColor=[UIColor blueColor].CGColor;
    shadowLayer.shadowOffset=CGSizeMake(0, 3);
    shadowLayer.shadowColor=[UIColor blackColor].CGColor;
    shadowLayer.shadowOpacity=0.8;//阴影透明度
    shadowLayer.cornerRadius=10.0;
    shadowLayer.shadowRadius=10.0;
    [self.view.layer addSublayer:shadowLayer];
    
    //图片层
    CALayer *imagesLayer=[CALayer layer];
    imagesLayer.frame=CGRectMake(160, 240, 128, 192);
    imagesLayer.contents=(id)image.CGImage;
    imagesLayer.cornerRadius=10.0;
    imagesLayer.masksToBounds=YES;
    imagesLayer.borderColor=[UIColor grayColor].CGColor;
    imagesLayer.borderWidth=1.0;
    [self.view.layer addSublayer:imagesLayer];

原文地址:https://www.cnblogs.com/bu779783251/p/3085586.html