核心動畫CALayer

2022-07-15 23:03:18 字數 869 閱讀 7902

1.我們來簡單了解一下calayer的基本概念:

calayer是核心動畫的基礎,可以做圓角、陰影、邊框等效果 ;

每個uiview內部都有乙個layer的屬性 ;

uiview可以響應事件,而calayer只負責顯示 ;

在實現核心動畫時,本質上是將calayer中的內容轉換成位圖,從而便於圖形硬體的 操縱 ;

2.calayer的座標系統 

uiview有frame、bounds和center三個屬性

calayer也有類似的屬性,分別為frame、bounds、position、anchorpoint 

3.錨點

anchorpoint的預設值為(0.5,0.5),也就是anchorpoint預設在layer的中心點。

position是layer中的anchorpoint在superlayer中的位置座標。

frame.origin.x = position.x - anchorpoint.x * bounds.size.width;

frame.origin.y = position.y - anchorpoint.y * bounds.size.height; 

4.calayer的常用屬性

背景顏色,內容,邊框,陰影,透明度 

5.提示

layer的設計目的不是為了取代檢視,因此不能基於calayer建立乙個獨立的視覺化 元件

layer的設計目的是提供檢視的基本可視內容,從而提高動畫的執行效率

除提供可視內容外,layer不負責檢視的事件響應、內容繪製等工作,同時layer不能 參與到響應者鏈條中 

6.參考以下**,可以更好的理解calyer的一些基本屬性和用法

- (void)viewdidload

核心動畫 CALayer簡介

在ios中看得見摸得著的東西基本上都是uiview,而uiview之所以能看得見摸得著就是因為他有乙個層 calayer property nonatomic,readonly,strong calayer layer 在建立uiview物件時,uiview內部會自動建立乙個層 即calayer物件...

iOS核心動畫之CALayer 自定義層

本文目錄 自定義層,其實就是在層上繪圖,一共有2種方法,下面詳細介紹一下。回到頂部 方法描述 建立乙個calayer的子類,然後覆蓋drawincontext 方法,使用quartz2d api進行繪圖 pragma mark 繪製乙個實心三角形 4 void drawincontext cgcon...

核心動畫 基礎動畫

一.簡單介紹 capropertyanimation的子類 屬性解析 fromvalue keypath相應屬性的初始值 tovalue keypath相應屬性的結束值 隨著動畫的進行,在長度為duration的持續時間內,keypath相應屬性的值從fromvalue漸漸的變為tovalue。如果...