應用顏色渲染. 首先要介紹Android Api中關於顏色渲染的幾個重要的類:
Shader,BitmapShader,ComposeShader,LinearGradient,RadialGradient,SweepGradient看一下它們之間的關係:
public class Shader extends Object
該類作為基類主要是返回繪製時顏色的橫向跨度。其子類可以作用與Piant。通過 piant.setShader(Shader shader);來實現一些渲染效果。之作用與圖形不作用與bitmap。
構造方法為預設的構造方法。 枚舉:
emun Shader.TileMode
定義了平鋪的3種模式:
static final Shader.TileMode CLAMP: 邊緣展開.
static final Shader.TileMode MIRROR:在水平方向和垂直方向交替景象, 兩個相鄰映像間沒有縫隙.
Static final Shader.TillMode REPETA:在水平方向和垂直方向重複擺放,兩個相鄰映像間有縫隙縫隙.
方法:
1. boolean getLoaclMatrix(Matrix localM); 如果shader有一個非本地的矩陣將返回true.
localM:如果不為null將被設定為shader的本地矩陣.
2. void setLocalMatrix(Matrix localM); 設定shader的本地矩陣,如果localM為空白將重設shader的本地矩陣。 Shader的直接子類:BitmapShader : 位元影像映像渲染LinearGradient : 線性渲染RadialGradient : 環形渲染SweepGradient : 掃描漸層渲染/梯度渲染ComposeShader : 組合渲染,可以和其他幾個子類組合起來使用是不是很像Animation及其子類的關係(AlphaAnimation,RotateAnimation,ScaleAnimation,TranslateAnimation, AnimationSet)既有具體的渲染效果,也有渲染效果的組合 下面說下Shader的使用步驟:1. 構建Shader對象2. 通過Paint的setShader方法設定渲染對象3.設定渲染對象4.繪製時使用這個Paint對象