Android学习笔记进阶17之LinearGradient

来源:互联网 发布:教然后知困读音 编辑:程序博客网 时间:2024/05/18 09:14

具体的看一下博文:Android学习笔记进阶15之Shader渲染

 

package xiaosi.BitmapShader;import android.app.Activity;import android.os.Bundle;public class BitmapShaderActivity extends Activity {    /** Called when the activity is first created. */private BitmapShaders bitmapShaders = null;    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);                bitmapShaders = new BitmapShaders(this);        setContentView(bitmapShaders);    }}


BitmapShaders.java

package xiaosi.BitmapShader;import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapShader;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.ComposeShader;import android.graphics.LinearGradient;import android.graphics.Paint;import android.graphics.PorterDuff;import android.graphics.RadialGradient;import android.graphics.Shader;import android.graphics.SweepGradient;import android.graphics.drawable.BitmapDrawable;import android.graphics.drawable.ShapeDrawable;import android.graphics.drawable.shapes.OvalShape;import android.view.View;public class BitmapShaders extends View{private LinearGradient linearGradient = null;private ComposeShader composeShader = null;private SweepGradient sweepGradient = null;private RadialGradient radialGradient = null;private BitmapShader bitmapShader = null;private Bitmap bitmap = null;private Paint paint = null;private ShapeDrawable shapeDrawable = null;private int BitmapWidth = 0;private int BitmapHeight = 0;public BitmapShaders(Context context){super(context);// 得到图像bitmap = ((BitmapDrawable) getResources().getDrawable(R.drawable.v)).getBitmap();BitmapWidth = bitmap.getWidth();BitmapHeight = bitmap.getHeight();// 构造渲染器LinearGradientlinearGradient = new LinearGradient(0, 0, 100, 100, new int[] {Color.RED, Color.GREEN, Color.BLUE, Color.WHITE }, null,Shader.TileMode.REPEAT);paint = new Paint();}@Overrideprotected void onDraw(Canvas canvas){super.onDraw(canvas);paint.setShader(linearGradient);canvas.drawRect(20, 50, 320, 156, paint);}}


 

原创粉丝点击