我们都知道,ios里可以通过UIView的layer属性为其设置圆角和阴影:
设置圆角:
注意:!!!上述两个方法必须配合使用,圆角才会生效.
设置阴影:
但是,我们也知道我们要给一个UIView同时设置圆角和阴影,直接操作一个view很显然是行不通的.因为一旦layer的maskToBounds属性被设置为YES,表示对frame外的内容作了裁剪,视图只能显示frame内的内容.那么,对于像超哥这样有学习强迫症的人非要造出一个带阴影的圆角视图该肿么办呢???
我们都知道,程序猿都是伟大的骗纸.所以这里可以通过一个视觉骗局实现这个效果,反正小白用户只关注结果,内部的实现他也不懂...接下来,进入正题.我们可以做两个UIView重叠,一个layer负责显示圆角,一个laye负责显示阴影.然后把显示圆角的view作为子视图添加到显示阴影的view上.
废话少说,先上代码:
运行效果:
怎么?只看结果,是不是像是只对一个View进行了操作.随着自己对编程的逐步深入,越来越发现程序猿其实都是骗纸.不过这也算是美丽的谎言,毕竟是这些代码的骗局实现了一个有一个炫酷有型的界面,给用户带来了不一样的体验!
本文著作劝归作者, 转载请注明出处.大家都是程序猿,相互理解