iOS每日一记之 设置UIImage的圆角

上次我们已经知道怎么把颜色转换成UIImage  但是当你按钮是圆角的时候的时候 你点击改变颜色的时候 它就变成了方形的。。。╮(╯▽╰)╭ 伤不起啊

所以就告诉发夹如何改变 UIImage的圆角

闲话少说直接上代码

// 设置image的圆角
-(UIImage *)cornerImageWithcornerRadius:(CGFloat)cornerRadius AndColor:(UIColor*)color {
 


imageWithColor是上次我提到的 把颜色转换成Image的方法  

    UIImage *sourceImage = [self imageWithColor:color];
    //生成一张新图片
    //1.开上一个位图上下文
    UIGraphicsBeginImageContextWithOptions(sourceImage.size, NO, 0.0);
    
    //2.把图片画在 位图上下文
    //2.1图片要裁剪成有圆角
    CALayer *layer = [CALayer layer];//图层里有一张图片
    
//    #warning 图层的大小一定要设置
    //图层设置大小
    layer.bounds = CGRectMake(0, 0, sourceImage.size.width, sourceImage.size.height);
    
    //设置内容
    layer.contents = (id)sourceImage.CGImage;
    
    //设置圆角
    layer.cornerRadius = cornerRadius;
    //裁剪
    layer.masksToBounds = YES;
    
    //设置边框
//    layer.borderWidth = borderWidth;
//    
//    //设置边框颜色
//    layer.borderColor = borderColor.CGColor;
    
    
    [layer renderInContext:UIGraphicsGetCurrentContext()];
    
    //3.从位图上下文 获取新图片
    UIImage *newImg = UIGraphicsGetImageFromCurrentImageContext();
    
    //4.结束位图的编辑
    UIGraphicsEndImageContext();
    
    //5.返回新图片
    return newImg;
}

用这个方法可以设置image的圆角 非常方便呦  哈哈哈哈

你可能感兴趣的:(uiimage)