UIView設置邊框陰影時需五,必須設置一個背景顏色掉蔬,不然不出來。
- UITableView 設置邊框陰影
UITableView設置邊框陰影時族奢,必須加上下面這句,不然也不會顯示
_topTableView.clipsToBounds = NO;
但是設置這句之后丹鸿,又會出現(xiàn)一個問題越走,就是無法設置圓角。我是將UITableView添加到一個UIView上靠欢,設置UIView的圓角和邊框陰影廊敌,在設置UITableView的圓角,就OK了掺涛。
- 控件使用masonry約束 添加layer時 :
在使用masonry設置view之后發(fā)現(xiàn)庭敦,設置任意角的圓角都不起作用,_myView都不顯示了。
這是因為在使用了masonry之后薪缆,view的frame和bounds都是0秧廉,所以在設置圓角就不會起作用伞广。
使用時,如何使用CAShapeLayer給view畫圓角
解決方法:
當設置完控件的約束疼电,需要調(diào)用layoutIfNeeded
函數(shù)進行布局嚼锄,然后所約束的控件才會按照約束條件,生成當前布局相應的frame和bounds蔽豺,這樣就可以利用這兩個屬性來進行圖片圓角剪裁区丑。
如
- 使用圓角的一些注意事項
layer 設置圓角:layer.cornerRadius
通過設置這個屬性即可。
當layer只被設置了顏色時 是生效的修陡。 當如果有其他背景圖片等 就不會生效了沧侥。 此時要 配合layer.masksToBounds
使用。
使用了 layer.masksToBounds 會導致 陰影失效魄鸦。當沖突時:
可以設置了父view 讓它來 負責展示陰影 或者 通過 CAShapeLayer 來添加自定義圓角