package shader.yb;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Shader;
import android.graphics.SweepGradient;
import android.view.View;
/**
* @author yubin
* @version 2012-8-14 上午10:45:28
**/
public class SweepGameView extends View implements Runnable {
Paint mPaint = null;
// 梯度渲染
Shader mSweepGradient = null;
public SweepGameView(Context context) {
super(context);
// 创建SweepGradient对象
// 第一个,第二个参数中心坐标
// 后面的参数与线性渲染相同
mSweepGradient = new SweepGradient(150, 150, new int[] { Color.GREEN,
Color.RED, Color.BLUE, Color.WHITE }, null);
mPaint = new Paint();
new Thread(this).start();
}
@Override
protected void onDraw(Canvas canvas) {
// 绘制梯度渐变
mPaint.setShader(mSweepGradient);
// 这里可以话任意形状
canvas.drawRect(0, 0, 300, 300, mPaint);
}
@Override
public void run() {
while(!Thread.currentThread().isInterrupted()) {
try {
Thread.sleep(100);
}
catch(Exception e) {
Thread.currentThread().interrupt();
}
postInvalidate();
}
}
}
SweepGradient扫描渲染
最新推荐文章于 2022-05-31 13:44:00 发布