1. 程式人生 > >UIView與CALayer

UIView與CALayer

UIView和CALayer的選擇

如顯示圖片的層可以用一個UIImageView來實現。 既然CALayer和UIView都能實現相同的顯示效果,那究竟該選擇誰好呢?

其實,對比CALayer,UIView多了一個事件處理的功能。也就是說,CALayer不能處理使用者的觸控事件,而UIView可以。

所以,在選擇的過程中,需要考慮到實際的情況,如果顯示出來的東西需要跟使用者進行互動的話,用UIView;如果不需要跟使用者進行互動,用UIView或者CALayer都可以

當然,CALayer的效能會高一些,因為它少了事件處理的功能,更加輕量級 

UIView可以通過subviews屬性訪問所有的子檢視,類似地,CALayer也可以通過sublayers屬性訪問所有的子層

UIView可以通過superview屬性訪問父檢視,類似地,CALayer也可以通過superlayer屬性訪問父層

特別注意:如果一個控制元件是另外一個控制元件的子控制元件,那麼這個控制元件的layer也是另一個控制元件的子layer。