iOS UIBezeirPath理解 歡迎指點

2021-07-13 09:05:13 字數 979 閱讀 9971

uibezeirpath是core graphics框架關於路徑的封裝,使用這個類可以定義簡單的形狀, such as  圓 橢圓 直線 曲線等

uibezierpathcgpathref資料型別的封裝。如果是基於向量形狀的路徑,都用直線和曲線去建立。我們使用直線段去建立矩形和多邊形,使用曲線去建立圓弧(arc)、圓或者其他複雜的曲線形狀。

建立乙個uibezierpath物件

呼叫-movetopoint:設定初始線段的起點

新增線或者曲線去定義乙個或者多個子路徑

改變uibezierpath物件跟繪圖相關的屬性。如,我們可以設定畫筆的屬性、填充樣式等

// 畫三角形

- (void)draw********path

// 畫矩形

- (void)drawrectpath

//畫圓

- (void)drawciclepath

// 畫橢圓

- (void)drawovalpath

//畫帶圓角的矩形

+ (instancetype)bezierpathwithroundedrect:(cgrect)rect

cornerradius:(cgfloat)cornerradius;

+ (instancetype)bezierpathwithroundedrect:(cgrect)rect

byroundingcorners:(uirectcorner)corners

cornerradii:(cgsize)cornerradii;

第乙個工廠方法是畫矩形,但是這個矩形是可以畫圓角的。第乙個引數是矩形,第二個引數是圓角大小。 第二個工廠方法功能是一樣的,但是可以指定某乙個角畫成圓角。像這種我們就可以很容易地給uiview擴充套件新增圓角的方法了。

四個都是圓角10:

C 基礎 四 指標的理解

指標的用途通過指標可以訪問記憶體 記錄位址編號 includeusing namespace std int main 指標占用的記憶體空間注意各種型別的指標占用位元組是固定的 在32位作業系統 4個位元組 在64位作業系統 8個位元組 cout sizeof int sizeof int endl...

我對委託的一點理解,歡迎斧正

委託其實可以看作是方法的指標或 引用 delegate bool comparetest int x,int y public bool test int x,int y comparetest ct new comparetest test 那麼ct 3,5 其實就相當於呼叫test 3,5 從上...

抽象類的理解 沒有寫例項歡迎補充

如果乙個類中,有方法沒有方法體.那麼這個方法就是抽象方法 即,方法只有宣告,沒有方法體 如果乙個類中,只要有抽象方法,那麼這個類就是抽象類 與其中的屬性無關 說明這個類不具體 抽象類也是類,有類就可以放屬性和方法 帶方法體和不帶的 抽象類中可以放置屬性,屬性是用來儲存資料的 抽象類中可以放置有方法體...