Android2D Draw on SurfaceView
We can draw something on SurfaceView like general View.
SurfaceView is usually used in case of Game. High frame-rate change is required.
I’m not game developer, so I use it Camera preview.
Sample
public class CustomSurfaceView extends SurfaceView implements Callback
{
private Paint paint;
public CustomSurfaceView ( Context context )
{
super(context);
getHolder().addCallback(this);
paint = new Paint(Paint.ANTI_ALIAS_FLAG);
}
@Override
public void surfaceChanged ( SurfaceHolder holder, int format, int width, int height )
{
// Change Surfaceview event
}
@Override
public void surfaceCreated ( SurfaceHolder holder )
{
// When created
// Draw something Lock
Canvas canvas = holder.lockCanvas();
canvas.drawColor(Color.BLACK);
paint.setColor(Color.GREEN);
canvas.drawRect(0, 0, 50, 50, paint);
holder.unlockCanvasAndPost(canvas);
}
@Override
public void surfaceDestroyed ( SurfaceHolder holder )
{
}
}
To add this view, it is same way of general View class.(Use addContentView, or setContentView).
Basics is here.
