ios基礎篇(十) CALayer基本屬性

2021-10-24 21:26:03 字數 2224 閱讀 9330

ca: core animation (核心動畫) 

calayer和uiview的關係

calayer的基本屬性

陰影、圓角大小、邊框寬度和顏色

寬度和高度

@property cgrect bounds;
位置(預設指中點,具體由anchorpoint決定)

@property cgpoint position;
錨點(x,y的範圍都是0-1),決定了position的含義

@property cgpoint anchorpoint;
背景顏色(cgcolorref型別)

@property cgcolorref backgroundcolor;
形變屬性

@property catransform3d transform;
邊框顏色(cgcolorref型別)

@property cgcolorref bordercolor;
邊框寬度

@property cgfloat borderwidth;
圓角半徑

@property cgfloat cornerradius;
內容(比如設定為cgimageref)

@property(retain) id contents;
- (void)viewdidload

- (void)touchesbegan:(nsset*)touches withevent:(uievent*)event

@end

如果想改layer的 x y 寬 高 --> 不要改frame 後面做動畫會有問題 去改 layer的bounds和postion

self.view add subvie:redview;  白紙上面放了一張紅色的紙

self.layer addsyblayer:redlayer;  白紙中間塗成了紅色

通過calayer,就能做出跟uiimageview一樣的介面效果

既然calayer和uiview都能實現相同的顯示效果,那究竟該選擇誰好呢?

uiview : 接受和處理系統事件、觸控事件。

calayer : 顯示內容

什麼是隱式動畫?

列舉幾個常見的animatable properties:

可以通過動畫事務(catransaction)關閉預設的隱式動畫效果

[catransaction begin]; 

[catransaction setdisableactions:yes];

self.myview.layer.position = cgpointmake(10, 10);

[catransaction commit];

控制項的根layer沒有隱式動畫  uiwidows下的就是根layer   

position和anchorpoint

calayer有2個非常重要的屬性:position和anchorpoint

設定position 是讓layer的中心跑到position的位置上  預設

anchorpoint 是將這個錨點的位置放在position 上

@inte***ce viewcontroller ()

@property (nonatomic, weak) calayer* second;

@end

@implementation viewcontroller

- (void)viewdidload

// 旋轉(一秒一次)

- (void)timechange

@end

iOS開發UI篇 CALayer簡介

ios開發ui篇 calayer簡介 一 簡單介紹 在ios中,你能看得見摸得著的東西基本上都是uiview,比如乙個按鈕 乙個文字標籤 乙個文字輸入框 乙個圖示等等,這些都是uiview。其實uiview之所以能顯示在螢幕上,完全是因為它內部的乙個圖層,在建立uiview物件時,uiview內部會...

iOS開發基礎 CALayer的使用

calayer 層 圖層 每個view 檢視 都附著在乙個層上 通過改變這個層 可以改變view的形狀 邊框 顏色等等 uiview redview uiview alloc initwithframe cgrectmake 100,100,100,100 設定錨點 即中心點 cell.layer....

iOS開發UI篇 CAlayer層的屬性

ios開發ui篇 calayer層的屬性 一 position和anchorpoint 1.簡單介紹 calayer有2個非常重要的屬性 position和anchorpoint property cgpoint position 用來設定calayer在父層中的位置 以父層的左上角為原點 0,0 ...