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.