UIView设置边框阴影时,必须设置一个背景颜色,不然不出来。
- UITableView 设置边框阴影
UITableView设置边框阴影时,必须加上下面这句,不然也不会显示
_topTableView.clipsToBounds = NO;
但是设置这句之后,又会出现一个问题,就是无法设置圆角。我是将UITableView添加到一个UIView上,设置UIView的圆角和边框阴影,在设置UITableView的圆角,就OK了。
- 控件使用masonry约束 添加layer时 :
在使用masonry设置view之后发现,设置任意角的圆角都不起作用,_myView都不显示了。
这是因为在使用了masonry之后,view的frame和bounds都是0,所以在设置圆角就不会起作用。
使用时,如何使用CAShapeLayer给view画圆角
解决方法:
当设置完控件的约束,需要调用layoutIfNeeded
函数进行布局,然后所约束的控件才会按照约束条件,生成当前布局相应的frame和bounds,这样就可以利用这两个属性来进行图片圆角剪裁。
如
- 使用圆角的一些注意事项
layer 设置圆角:layer.cornerRadius
通过设置这个属性即可。
当layer只被设置了颜色时 是生效的。 当如果有其他背景图片等 就不会生效了。 此时要 配合layer.masksToBounds
使用。
使用了 layer.masksToBounds 会导致 阴影失效。当冲突时:
可以设置了父view 让它来 负责展示阴影 或者 通过 CAShapeLayer 来添加自定义圆角