您好,登錄后才能下訂單哦!
在iOS 中,UIButton、UIImage等UIView 之所以能夠顯示在屏幕上,是因為其內(nèi)部有一個圖層(CALayer)。通過UIView的layer 屬性可以訪問這個圖層:
@property(nonatomic,readonly,retain) CALayer *layer;
當(dāng)UIView需要顯示到屏幕上時,會調(diào)用 drawRect: 方法進行繪圖,并且會將所有內(nèi)容繪制在自己的圖層上,繪圖完畢后,系統(tǒng)會將圖層拷貝的屏幕上,于是就完成了UIView的顯示。
UIView中有兩個容易混淆的屬性, postion 和 anchorPoint(錨點)。postion用來設(shè)置CALayer 在父層中的位置,anchorPoint決定著CALayer上的哪個點會在postion點上。舉個例子來說,紅×××層要加在綠×××層上。
(1)positon為(100,100),anchorPoint為(0,0),效果圖如下
(2)positon為(100,100),anchorPoint為(0.5,0.5),效果圖如下
(3)positon為(100,100),anchorPoint為(1,1),效果圖如下
(4)positon為(100,100),anchorPoint為(1,0.5),效果圖如下
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。