给视图添加渐变色、圆角、阴影、线框、虚线框

1.渐变色

UIColor *dcolor = [UIColor colorWithRed:255/255.0 green:140/255.0 blue:0/255.0 alpha:1];
UIColor *lcolor = [UIColor colorWithRed:148/255.0 green:0/255.0 blue:211/255.0 alpha:1];
UIView *view = [[UIView alloc]initWithFrame:CGRectMake(10, 10, 300,50)];
CAGradientLayer *gradientLayer = [CAGradientLayer layer];
    gradientLayer.colors = @[(__bridge id)dcolor.CGColor, (__bridge id)lcolor.CGColor];
    gradientLayer.locations = @[@0.1,@0.9,@1.0];
    gradientLayer.startPoint = CGPointMake(0, 0);
    gradientLayer.endPoint = CGPointMake(1.0, 0);
    gradientLayer.cornerRadius = 8;
    gradientLayer.frame = CGRectMake(0, 0, view.frame.size.width, view.frame.size.height) ;
    [view.layer insertSublayer:gradientLayer atIndex:0];

2.圆角和边框(虚线边框)添加

 //圆角
UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:backRect cornerRadius:4];
CAShapeLayer *maskLayer = [[CAShapeLayer alloc]init];
maskLayer.frame = backRect;

//边框
CAShapeLayer *borderLayer = [CAShapeLayer layer];
borderLayer.frame = backRect;
borderLayer.lineWidth = 1.f;
borderLayer.strokeColor = [UIColor colorWithRed:235/255.0 green:235/255.0 blue:235/255.0 alpha:1].CGColor;
borderLayer.fillColor = [UIColor clearColor].CGColor;
//若是虚线则设置间隔
borderLaye.lineDashPattern = @[@4, @2];

maskLayer.path = maskPath.CGPath;
borderLayer.path = maskPath.CGPath;
[view.layer addSublayer:borderLayer];
view.layer.mask = maskLayer;

3.阴影及(光栅化)

//阴影
_bubbleView.layer.shadowColor = [UIColor blackColor].CGColor;
_bubbleView.layer.shadowRadius = 2;
_bubbleView.layer.shadowOffset = CGSizeMake(2, 2);
_bubbleView.layer.shadowOpacity = 0.35;//阴影透明度,默认0明度,默认0
//光栅化(会导致视图不清晰),我用的不多
self.btmBackView.layer.shouldRasterize = YES;
 //设置阴影图形,减少离屏渲染时间(性能主要提升点)
UIBezierPath *path = [UIBezierPath bezierPathWithRect:backView.bounds];
self.backView.layer.shadowPath = path.CGPath;
self.backView.layer.opaque = YES; //当前UIView是否不透明
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,407评论 3赞 119
  • 。 , 拥抱
    sansansan阅读 256评论 0赞 0
  • 已经开始了大三的生活了,以前听高中老师说大学比高中时间还快,我不信,当真的切身体会时候,发现原来经常挂在嘴边的青春...
    容若珍惜阅读 861评论 1赞 0
  • 悟出这个道理是源自于最近发生的事。 朋友说合伙办辅导班吧!我说好。结果因为太晚开始,太晚找房,太晚宣传,以至于生源...
    露子含手绘阅读 339评论 0赞 0
  • 你说,你最爱高山 我说,我最爱大海 你说,你喜欢雨 我说,我喜欢雪 你说,你喜欢春天 我说,我喜欢冬天 你说,为何...
    开心小媛阅读 251评论 0赞 2

友情链接更多精彩内容