如何高性能的给UIImageView加个圆角?(不准说layer.cornerRadius!)
2017-02-07 11:37
645 查看
利用UIBezierPath这个类画出圆形图片
- (UIImage*)drawImageWithSize:(CGSize)size imageName:(NSString *)imageName
{
// 申请一块特定大小的画布
UIGraphicsBeginImageContext(size);
// 画出一个与画布等大的圆
UIBezierPath *path = [UIBezierPath
bezierPathWithOvalInRect:CGRectMake(0,
0, size.width, size.height)];
// 将这个圆以外的部分设置为无效区
[path addClip];
UIImage *oldImage = [UIImage
imageNamed:imageName];
[oldImage drawInRect:CGRectMake(0,
0, size.width, size.height)];
UIImage *newImage =
UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}
imageView.image =
newImage;
- (UIImage*)drawImageWithSize:(CGSize)size imageName:(NSString *)imageName
{
// 申请一块特定大小的画布
UIGraphicsBeginImageContext(size);
// 画出一个与画布等大的圆
UIBezierPath *path = [UIBezierPath
bezierPathWithOvalInRect:CGRectMake(0,
0, size.width, size.height)];
// 将这个圆以外的部分设置为无效区
[path addClip];
UIImage *oldImage = [UIImage
imageNamed:imageName];
[oldImage drawInRect:CGRectMake(0,
0, size.width, size.height)];
UIImage *newImage =
UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}
imageView.image =
newImage;
相关文章推荐
- 如何高性能的给UIImageView加个圆角?(不准说layer.cornerRadius!)
- 如何高性能的给UIImageView加个圆角?(不准说layer.cornerRadius!)
- 如何高性能的给 UIImageView 加个圆角?
- IOS如何给VIEW设置2个圆角?set cornerRadius for only top-left and top-right corner of a UIVIEW
- 如何高性能的给UIImageView加个圆角
- UIImageView的layer的属相介绍,一些常用的加边框,加圆角放大,缩小等设置
- 如果需要将UIView的4个角全部都为圆角,做法相当简单,只需设置其Layer的cornerRadius属性即可
- UIView/UIImageView/UIButton... 调用setCornerRadius无效问题
- 教你如何将UIImageView视图中的图片变成圆角
- 裁切图像设置圆角图像,不使用控件的layer.cornerRadius属性
- 不使用layer的masksToBounds和cornerRadius来设置圆角
- iPhone 如何使用UIImageView播放动画,并停留在之后一张图片并添加播放结束时的事件
- 给UIImageview 添加边框 或者设置成圆角
- 给UIImageview 添加边框 或者设置成圆角
- UIImageView圆角,自适应图片宽高比例,图片拉伸,缩放比例
- 如何在UIimageview里显示一张图片里的某一部分
- UIImageView加上圆角
- UIView,UIImageView支持顶端圆角的方式
- UIImageView不能设置圆角的解决方法
- WPF/Silverlight TextBox 实现CornerRadius圆角