over 6 years ago

iPhone上的程序在显示头像之类的图片时,基本上都是使用圆角的方式,比如TweetBot这个评价最高的Twitter客户端。stackoverflow上也有很多关于如何实现圆角图片的问题,实现方法有不少,不过最简单的实现是使用CALayer

CALayer *roundedLayer = [self layer];
[roundedLayer setMasksToBounds:YES];
roundedLayer.cornerRadius = 5.0;
roundedLayer.borderColor = [[UIColor grayColor] CGColor];

其中的cell是因为图片在UITableView中使用。但是如果要在每次想要使用圆角图片的时候,都要写上这么写代码的话,就不符合码农懒的特性。既然iOS没有提供圆角的UIImageView,那么我们就自己来创建一个UIRoundedImageView。那么把这段代码加到哪里呢?这里,

(void)willMoveToWindow:(UIWindow *)newWindow
{
    CALayer *roundedLayer = [self layer];
    [roundedLayer setMasksToBounds:YES];
    roundedLayer.cornerRadius = 5.0;
    roundedLayer.borderColor = [[UIColor grayColor] CGColor];
}

之后再把UIImageView控件的Custom Class设置为UIRoundedImageView

Screen Shot 2012 04 08 at 9 24 59 PM

UIRoundedImageView on Github!

← Stop Google From Tracking You 调整TimeMachine的备份频率 →