2010-06-03 76 views

回答

4

CALayer代表了一個與UIView完全不同的「事物」。 CALayer只處理繪圖本身,並封裝所需的信息。另一方面,一個視圖擁有一個或多個圖層,它用於繪製圖層。一個視圖有許多其他的功能和屬性,但與它在屏幕上的表示無關。

我會推薦挖掘蘋果文檔,也許拿起一本關於面向對象編碼的書。

+0

對,爲什麼不直接將圖層直接添加到視圖的屬性? – jasonbogd 2010-06-03 07:17:06

+0

這就是基於對象編碼的全部要點。對象應該對定義好的行爲部分負責,而不是別的。你所描述的是「上帝對象」的經典案例,並且明顯違背了良好的面向對象設計。 http://en.wikipedia.org/wiki/God_object – DougW 2010-06-03 17:50:12