ios 貝塞爾曲線切割圓角的方法
ios 系統(tǒng)框架已經(jīng)給我們提供了相應的切割圓角的方法, 但是如果在一個見面有很多控件切割的話會出現(xiàn)卡頓和個別不切得現(xiàn)在
/* 創(chuàng)建一個Button */
UIButton * button = [UIButton buttonWithType:(UIButtonTypeSystem)];
[button setFrame:CGRectMake(100, 100, 100, 100)];
[self addSubview:button];
/* 正廠的圓角需求處理方法 */
button.layer.cornerRadius = 10.0f; //弧度
button.layer.masksToBounds = YES;
/* 貝塞爾曲線切割 */
/**
*
* @param UIRectCorner
* 左上 UIRectCornerTopLeft = 1 << 0,
左下 UIRectCornerBottomLeft = 1 << 2,
右下 UIRectCornerBottomRight = 1 << 3,
所有角 UIRectCornerAllCorners = ~0UL
*
*/
UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:button.bounds byRoundingCorners:UIRectCornerTopLeft | UIRectCornerBottomLeft cornerRadii:button.bounds.size];
CAShapeLayer *maskLayer = [[CAShapeLayer alloc]init];
//設置大小
maskLayer.frame = button.bounds;
//設置圖形樣子
maskLayer.path = maskPath.CGPath;
button.layer.mask = maskLayer;
注意: 如果這里選擇兩個角 的話如果是選兩個對角線 則會切 所有角
比如:UIRectCornerTopLeft | UIRectCornerBottomRight 他就會切割所有角
當然你也可以直接創(chuàng)建個圓角的button
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
詳解 objective-c中interface與protocol的作用
這篇文章主要介紹了詳解 objective-c中interface與protocol的作用的相關資料,需要的朋友可以參考下2017-05-05
iOS開發(fā)中使用UIDynamic來捕捉動畫組件的重力行為
這篇文章主要介紹了iOS開發(fā)中使用UIDynamic來捕捉動畫組件的重力行為的方法,代碼基于傳統(tǒng)的Objective-C,需要的朋友可以參考下2015-12-12
iOS 中使用tableView實現(xiàn)右滑顯示選擇功能
這篇文章主要介紹了iOS 中使用tableView實現(xiàn)右滑顯示選擇功能的相關資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-07-07
iOS漸變圓環(huán)旋轉動畫CAShapeLayer CAGradientLayer
這篇文章主要介紹了iOS漸變圓環(huán)旋轉動畫CAShapeLayer CAGradientLayer的相關資料,需要的朋友可以參考下2016-09-09
iOS開發(fā)中使用SQL語句操作數(shù)據(jù)庫的基本用法指南
這篇文章主要介紹了iOS開發(fā)中使用SQL語句操作數(shù)據(jù)庫的基本用法指南,包括一些常用SQL語句的整理,需要的朋友可以參考下2015-12-12

