使用
+ (uibezierpath *)bezierpathwithroundedrect:(cgrect)rect byroundingcorners:(uirectcorner)corners cornerradii:(cgsize)cornerradii(ios 3.2 and later)
enum ;
typedef nsuinteger uirectcorner;
以及cashapelayer來實現.
uibezierpath *maskpath = [uibezierpath bezierpathwithroundedrect:imageview.bounds byroundingcorners:uirectcornerbottomleft cornerradii:cgsizemake(10.0, 10.0)];
cashapelayer *masklayer = [cashapelayer layer];
masklayer.frame = targetview.bounds
; masklayer.path = maskpath.cgpath
;targetview.layer
.mask = masklayer;
clipstobounds
是指檢視上的子檢視,如果超出父檢視的部分就擷取掉,
maskstobounds
卻是指檢視的圖層上的子圖層,如果超出父圖層的部分就擷取掉
UIView如何設定部分圓角
給uiview設定四個圓角很簡單 backgroundview.layer cornerradius 12這樣就實現了給背景圖設定4個半徑12的圓角,但是要是只對上半部分或者某乙個角設定圓角效果要怎麼做呢?多數部落格給出的解決方案還是oc版本,這裡貼一下我寫的swift版本解決方案 let mask...
UIView設定部分角為圓角
如果需要將uiview的4個角全部都為圓角,做法相當簡單,只需設定其layer的cornerradius屬性即可 專案需要使用quartzcore框架 而若要指定某幾個角 小於4 為圓角而別的不變時,這種方法就不好用了。對於這種情況,stackoverflow上提供了幾種解決方案。其中最簡單優雅的方...
UIView 設定圓角
直接看 viewt.layer.cornerradius 10 設定那個圓角的有多圓 viewt.layer.borderwidth 10 設定邊框的寬度,當然可以不要 viewt.layer.bordercolor uicolor redcolor cgcolor 設定邊框的顏色 viewt.la...