iOS uiimage和其它view 设置圆角的方式
来源:互联网 发布:linux网速测试工具 编辑:程序博客网 时间:2024/05/20 02:54
第一种和第三种 都是添加到layer层,会有一些渲染的效果,相对来说,第二种可能会好点。
//用UIGraphics进行2D图像渲染不要用UIGraphicsBeginImageContext(size);不然图片会模糊
UIGraphicsBeginImageContextWithOptions(newSize,NO, [UIScreenmainScreen].scale);
最后一个参数为缩放因子,设置为0.0的时候,系统会根据屏幕的分辨率自动调节。设置为1.0的时候可能会与有些屏幕分辨率不符合,导致图片有点 模糊。也可以设置成UIScreen.mainScreen().scale第一种方法:通过设置layer的属性
最简单的一种,但是很影响性能,一般在正常的开发中使用很少.
UIImageView *imageView = [[UIImageView alloc]initWithFrame:CGRectMake(100, 100, 100, 100)]; //只需要设置layer层的两个属性 //设置圆角 imageView.layer.cornerRadius = imageView.frame.size.width / 2; //将多余的部分切掉 imageView.layer.masksToBounds = YES; [self.view addSubview:imageView];
第二种方法:使用贝塞尔曲线UIBezierPath和Core Graphics框架画出一个圆角
UIImageView *imageView = [[UIImageView alloc]initWithFrame:CGRectMake(100, 100, 100, 100)]; imageView.image = [UIImage imageNamed:@"1"]; //开始对imageView进行画图 UIGraphicsBeginImageContextWithOptions(imageView.bounds.size, NO, [UIScreen mainScreen].scale); //使用贝塞尔曲线画出一个圆形图 [[UIBezierPath bezierPathWithRoundedRect:imageView.bounds cornerRadius:imageView.frame.size.width] addClip]; [imageView drawRect:imageView.bounds]; imageView.image = UIGraphicsGetImageFromCurrentImageContext(); //结束画图 UIGraphicsEndImageContext(); [self.view addSubview:imageView];
第三种方法:使用CAShapeLayer和UIBezierPath设置圆角
首先需要导入<AVFoundation/AVFoundation.h>
#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; UIImageView *imageView = [[UIImageView alloc]initWithFrame:CGRectMake(100, 100, 100, 100)]; imageView.image = [UIImage imageNamed:@"1"]; UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:imageView.bounds byRoundingCorners:UIRectCornerAllCorners cornerRadii:imageView.bounds.size]; CAShapeLayer *maskLayer = [[CAShapeLayer alloc]init]; //设置大小 maskLayer.frame = imageView.bounds; //设置图形样子 maskLayer.path = maskPath.CGPath; imageView.layer.mask = maskLayer; [self.view addSubview:imageView];}
阅读全文
0 0
- iOS uiimage和其它view 设置圆角的方式
- iOS每日一记之 设置UIImage的圆角
- iOS将UIImage设置为圆角
- iOS view边框和阴影的设置圆角
- 设置UIImage的渲染模式:UIImage.renderingMode(两种方式)
- iOS设置UIImage的渲染模式:UIImage.renderingMode
- iOS最不卡顿的圆角图片的设置(UIImage分类)
- ios view 设置圆角
- ios给view设置背景颜色的正确方式
- iOS UIImage 和 NSString的相互转化
- iOS-UIImage的创建和简单使用
- 【IOS开发】UIImage 和 NSString的保存
- 【IOS开发】UIImage 和 NSString的保存
- ios中设置view的圆角角度
- iOS学习之——View的圆角设置
- iOS view的指定角设置圆弧
- IOS UIImage常用的加载图片有3种方式
- iOS设置UIimage图片方向
- TP5
- hdu1045—Fire Net(二分图最大匹配)
- Struts2.5版本以上的struts.xml和jar包配置
- Java 实现ftp上传下载文件
- 33 个 2017 年必须了解的 iOS 开源库
- iOS uiimage和其它view 设置圆角的方式
- [HAOI2009]毛毛虫
- 关于accept非阻塞
- C语言(关于字符数组)
- session介绍
- 报时助手
- Spark 踩坑记录
- js事件委托
- [Android] ImageView.ScaleType设置图解