4.3 陰影

2018-02-24 14:50 更新

陰影

????iOS的另一個常見特性呢,就是陰影。陰影往往可以達到圖層深度暗示的效果。也能夠用來強調(diào)正在顯示的圖層和優(yōu)先級(比如說一個在其他視圖之前的彈出框),不過有時候他們只是單純的裝飾目的。

????給shadowOpacity屬性一個大于默認值(也就是0)的值,陰影就可以顯示在任意圖層之下。shadowOpacity是一個必須在0.0(不可見)和1.0(完全不透明)之間的浮點數(shù)。如果設置為1.0,將會顯示一個有輕微模糊的黑色陰影稍微在圖層之上。若要改動陰影的表現(xiàn),你可以使用CALayer的另外三個屬性:shadowColorshadowOffsetshadowRadius。

????顯而易見,shadowColor屬性控制著陰影的顏色,和borderColorbackgroundColor一樣,它的類型也是CGColorRef。陰影默認是黑色,大多數(shù)時候你需要的陰影也是黑色的(其他顏色的陰影看起來是不是有一點點奇怪。。)。

????shadowOffset屬性控制著陰影的方向和距離。它是一個CGSize的值,寬度控制這陰影橫向的位移,高度控制著縱向的位移。shadowOffset的默認值是 {0, -3},意即陰影相對于Y軸有3個點的向上位移。

????為什么要默認向上的陰影呢?盡管Core Animation是從圖層套裝演變而來(可以認為是為iOS創(chuàng)建的私有動畫框架),但是呢,它卻是在Mac OS上面世的,前面有提到,二者的Y軸是顛倒的。這就導致了默認的3個點位移的陰影是向上的。在Mac上,shadowOffset的默認值是陰影向下的,這樣你就能理解為什么iOS上的陰影方向是向上的了(如圖4.5).

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號