代码就是一个简单的画了一个三角,想画更多的,自己研究去
package alice.bw.com.surfaceviewdemo;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
/**
* @author alice
* @version 1.0
* @Date 2017/10/25 11:11
*/
public class TriangleView extends SurfaceView {
private SurfaceHolder holder;
private MyDrawThread thread;
public TriangleView(Context context) {
super(context);
initView();
}
public TriangleView(Context context, AttributeSet attrs) {
super(context, attrs);
initView();
}
public TriangleView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
initView();
}
private void initView() {
holder = getHolder();
thread = new MyDrawThread();
holder.addCallback(new SurfaceHolder.Callback() {
@Override
public void surfaceCreated(SurfaceHolder surfaceHolder) {
thread.start();
}
@Override
public void surfaceChanged(SurfaceHolder surfaceHolder, int i, int i1, int i2) {
}
@Override
public void surfaceDestroyed(SurfaceHolder surfaceHolder) {
}
});
}
class MyDrawThread extends Thread{
@Override
public void run() {
super.run();
Paint paint = new Paint();
paint.setColor(Color.RED);
paint.setAntiAlias(true);
Canvas canvas = holder.lockCanvas();
canvas.drawColor(Color.BLUE);
canvas.drawLine(200f,0f,0f,200f,paint);
canvas.drawLine(0f,200f,400f,200f,paint);
canvas.drawLine(200f,0f,400f,200f,paint);
holder.unlockCanvasAndPost(canvas);
}
}
}