iOS 指定UIView的某幾個角為圓角

2022-08-25 21:18:24 字數 933 閱讀 3069

如果需要將uiview的4個角全部都為圓角,做法相當簡單,只需設定其layer的cornerradius屬性即可(專案需要使用quartzcore框架)。而若要指定某幾個角(小於4)為圓角而別的不變時,這種方法就不好用了。

對於這種情況,stackoverflow上提供了幾種解決方案。其中最簡單優雅的方案,就是使用uibezierpath。下面給出一段示例**。

/*

指定uiview的某幾個角為圓角

* uirectcornertopleft

* uirectcornertopright

* uirectcornerbottomleft

* uirectcornerbottomright

* uirectcornerallcorners

*/uiview *view = [[uiview alloc] initwithframe:cgrectmake(120, 120, 80, 80

)]; view.backgroundcolor =[uicolor redcolor];

[self.view addsubview:view];

uibezierpath *maskpath = [uibezierpath bezierpathwithroundedrect:view.bounds byroundingcorners:uirectcornerbottomleft | uirectcornerbottomright cornerradii:cgsizemake(10, 10

)]; cashapelayer *masklayer =[[cashapelayer alloc] init];

masklayer.frame =view.bounds;

masklayer.path =maskpath.cgpath;

view.layer.mask = masklayer;

iOS 指定UIView的某幾個角為圓角

如果需要將uiview的4個角全部都為圓角,做法相當簡單,只需設定其layer的cornerradius屬性即可 專案需要使用quartzcore框架 而若要指定某幾個角 小於4 為圓角而別的不變時,這種方法就不好用了。對於這種情況,stackoverflow上提供了幾種解決方案。其中最簡單優雅的方...

iOS開發之指定UIView的某幾個角為圓角

如果需要將uiview的4個角全部都為圓角,做法相當簡單,只需設定其layer的cornerradius屬性即可 專案需要使用quartzcore框架 而若要指定某幾個角 小於4 為圓角而別的不變時,這種方法就不好用了。對於這種情況,stackoverflow上提供了幾種解決方案。其中最簡單優雅的方...

iOS開發之指定UIView的某幾個角為圓角

如果需要將uiview的4個角全部都為圓角,做法相當簡單,只需設定其layer的cornerradius屬性即可 專案需要使用quartzcore框架 而若要指定某幾個角 小於4 為圓角而別的不變時,這種方法就不好用了。對於這種情況,stackoverflow上提供了幾種解決方案。其中最簡單優雅的方...