學習Core Animation做一下學習記錄,加深下自己的理解。
一,圖層與視圖
1, 一個視圖就是屏幕上一個矩形塊(圖片,按鈕),能夠攔截用戶手勢,點擊等。
所有視圖都是基於父類UIView而派生的。UIView可以處理觸摸事件,支持Core Graphics繪圖,可以做仿射變換,或者簡單的滑動,漸變動畫。
2,CAlayer 類和UIView相似,同樣是被層級關係管理的矩形塊,同樣可加載一些文本,圖片,背景色,管理子視圖的位置。可以做動畫和變換。和UIView不同的是CALayer不處理用戶的交互。
每一個UIVIew都有一個layer實例圖層屬性。實際上layer纔是真正用來做顯示和動畫的,UIView只是對它的封裝。
二,圖層的能力
layer 可以做的功能,陰影,圓角,帶顏色的邊框,3D變換,非矩形範圍,透明遮罩,多級非線性動畫。
三,圖層的使用
1,創建一個簡單的項目,添加一個視圖,view1
我們在view1的圖層上面添加一個圖層。blueLayer,藍色
- (void)viewDidLoad {
[super viewDidLoad];
CALayer *blueLayer = [CALayer layer];
blueLayer.backgroundColor = [UIColor blueColor].CGColor;
blueLayer.frame = CGRectMake(20, 20, 50, 50);
blueLayer.contentsScale = [[UIScreen mainScreen] scale];
[self.view1.layer addSublayer:blueLayer];
}