iOS-设置图片圆角

  • 常用设置:
//cornerRadius 设置为self.iconImage图片宽度的一半(圆形图片)   
 self.iconImage.layer.cornerRadius = 20;
 self.iconImage.layer.masksToBounds = YES;
  • 适用 xib 或者 storyboard
Paste_Image.png
  • 绘图做法

使用图层过量会有卡顿现象, 特别是弄圆角或者阴影会很卡, 如果设置图片圆角一般用绘图来做

//写个UIImage分类
#import <UIKit/UIKit.h>

@interface UIImage (myExtension)

+ (UIImage *)cutCircleImage:(NSString *)imageName;

@end

实现

#import "UIImage+myExtension.h"

@implementation UIImage (myExtension)

- (UIImage *)cutCircleImage
{
    UIGraphicsBeginImageContextWithOptions(self.size, NO, 0.0);
    // 获取上下文  
    CGContextRef ctr = UIGraphicsGetCurrentContext();
    // 设置圆形
    CGRect rect = CGRectMake(0, 0, self.size.width, self.size.height);
    CGContextAddEllipseInRect(ctr, rect);
    // 裁剪
    CGContextClip(ctr);
    // 将图片画上去
    [self drawInRect:rect];
    UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return image;
}

+ (UIImage *)cutCircleImage:(NSString *)imageName
{
    return [[self imageNamed:imageName] cutCircleImage];
}

@end

使用

- (void)viewDidLoad {
    [super viewDidLoad];
    
    UIImageView *imageV = [[UIImageView alloc] initWithFrame:CGRectMake(100, 100, 200, 200)];
    imageV.image = [UIImage cutCircleImage:@"flower"];
    self.iconImageView = imageV;
    
    [self.view addSubview:self.iconImageView];
}
  • 更多介绍

iOS-设置图片圆角的几种方法总结:
http://www.jianshu.com/p/6cf66c95fa4d

iOS图片设置圆角性能问题:
http://www.jianshu.com/p/34189f62bfd8

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 转载:http://www.jianshu.com/p/32fcadd12108 每个UIView有一个伙伴称为l...
    F麦子阅读 6,594评论 0 13
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥ios动画全貌。在这里你可以看...
    每天刷两次牙阅读 8,698评论 6 30
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看...
    F麦子阅读 5,272评论 5 13
  • 前言: 现在众多App中,用户头像,BBS帖子详情,为了美观好多都是采用的原形图片来显示,QQ和微信的用户头像也是...
    Mr_Bob_阅读 7,999评论 3 10
  • 每个UIView有一个伙伴称为layer,一个CALayer。UIView实际上并没有把自己画到屏幕上;它绘制本身...
    shenzhenboy阅读 3,260评论 0 17

友情链接更多精彩内容