博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS设置圆角矩形和阴影效果
阅读量:4982 次
发布时间:2019-06-12

本文共 1476 字,大约阅读时间需要 4 分钟。

1.设置圆角矩形

    

//设置dropview属性    _dropView.backgroundColor=[[UIColor whiteColor] colorWithAlphaComponent:0.8];    _dropView.layer.cornerRadius = 8;    _dropView.layer.masksToBounds = YES;//(或者_dropView.clipsToBounds=YES;)

 

    这里masksToBounds或者clipsToBounds的设置是对父视图设置,设置后对子视图超出部分裁减掉(否则子视图还是会遮住圆角)。

2.设置阴影:

_dropView.layer.shadowColor=[[UIColor grayColor] colorWithAlphaComponent:0.8].CGColor;    _dropView.layer.shadowOffset=CGSizeMake(10,10);    _dropView.layer.shadowOpacity=0.5;    _dropView.layer.shadowRadius=8;   // _dropView.layer.masksToBounds = YES;

    在通过这样的方式设置阴影时,必须把父视图的masksToBounds属性关掉,因为阴影设置的方式就是加offset给超出视图部分设置颜色来实现的,一旦不让子视图超出,阴影也就看不出了。

3.圆角+阴影

     如果上面的方法一起用,把masksToBounds开了,阴影无法显示,关了的话其上的View又会遮住圆角。解决的方式只能是再加一层layer。

     

    

_dropView.backgroundColor=[[UIColor whiteColor] colorWithAlphaComponent:0.8];    _dropView.layer.cornerRadius = 8;    _dropView.layer.masksToBounds = YES;    CALayer *subLayer=[CALayer layer];    CGRect fixframe=_dropView.layer.frame;    fixframe.size.width=[UIScreen mainScreen].bounds.size.width-40;    subLayer.frame=fixframe;    subLayer.cornerRadius=8;    subLayer.backgroundColor=[[UIColor grayColor] colorWithAlphaComponent:0.5].CGColor;    subLayer.masksToBounds=NO;    subLayer.shadowColor=[UIColor grayColor].CGColor;    subLayer.shadowOffset=CGSizeMake(10,10);    subLayer.shadowOpacity=0.5;    subLayer.shadowRadius=8;    [self.layer insertSublayer:subLayer below:_dropView.layer];

悬浮的感觉粗来了把。

    

 
 

转载于:https://www.cnblogs.com/rayshen/p/4900336.html

你可能感兴趣的文章
新公司java的注解以及springboot的相关注解
查看>>
Unity脚本的生命周期中几个重要的方法
查看>>
poj1552
查看>>
Thinkphp中文水印和图片水印合体集成插件
查看>>
FLASK安装--兼收EZ_INSTALL及PIP
查看>>
C++静态成员变量和静态成员函数小结
查看>>
Python---Flask--02--模板
查看>>
PHP学习笔记---封装(面向对象三大特性之一)
查看>>
如何快速找到指定端口被哪个程序占用并释放该端口(解决bindException)
查看>>
迭代之while循环(1)
查看>>
final修饰的类有什么特点
查看>>
关于string类中find函数的讲解
查看>>
程序员的情书
查看>>
Spring Cloud Eureka 使用 IP 地址进行服务注册
查看>>
Python 包的制作(__init__.py)
查看>>
java内存模型优化建议
查看>>
三十、模块补充
查看>>
流程审批设计
查看>>
别装了,你根本就不想变成更好的人
查看>>
数据库 join
查看>>