您好,登錄后才能下訂單哦!
在iOS 中,UIButton、UIImage等UIView 之所以能夠顯示在屏幕上,是因為其內部有一個圖層(CALayer)。通過UIView的layer 屬性可以訪問這個圖層:
@property(nonatomic,readonly,retain) CALayer *layer;
當UIView需要顯示到屏幕上時,會調用 drawRect: 方法進行繪圖,并且會將所有內容繪制在自己的圖層上,繪圖完畢后,系統會將圖層拷貝的屏幕上,于是就完成了UIView的顯示。
UIView中有兩個容易混淆的屬性, postion 和 anchorPoint(錨點)。postion用來設置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),效果圖如下
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。