android中LinearGradient線型漸變

Paint p=new Paint();
LinearGradient lg=new LinearGradien(0,0,100,100,Color.RED,Color.BLUE,Shader.TileMode.MIRROR);
參數一爲漸變起初點座標x位置,參數二爲y軸位置,參數三和四分辨對應漸變終點,最後參數爲平鋪方式,這裏設置爲鏡像
Gradient是基於Shader類,所以我們通過Paint的setShader方法來設置這個漸變,代碼如下: mPaint.setShader(lg);
canvas.drawCicle(0,0,200,mPaint); //參數3爲畫圓的半徑,類型爲float型。

它除了定義開始顏色和結束顏色以外還可以定義,多種顏色組成的分段漸變效果
LinearGradient shader = new LinearGradient(0, 0, endX, endY, new int[]{startColor, midleColor, endColor},new float[]{0 , 0.5f, 1.0f}, TileMode.MIRROR);
其中參數new int[]{startColor, midleColor, endColor}是參與漸變效果的顏色集合,
其中參數new float[]{0 , 0.5f, 1.0f}是定義每個顏色處於的漸變相對位置,
這個參數可以爲null,如果爲null表示所有的顏色按順序均勻的分佈
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章