Android游戏开发之七:自定义SurfaceView

这里我们直接继承SurfaceView,实现SurfaceHolder.Callback接口,处理surfaceCreated、 surfaceChanged以及surfaceDestroyed方法,这里我们并没有把按键控制传入,最终游戏的控制方面仍然由View内部类处理比 较好,有关SurfaceView的具体我们可以参见Android开源项目的Camera中有关画面捕捉以及VideoView的控件实现大家可以清晰 了解最终的用意。

 
 
  1. public class cwjView extends SurfaceView implements SurfaceHolder.Callback {    
  2.  public cwjView(Context context, AttributeSet attrs) {    
  3.   super(context, attrs);    
  4.   SurfaceHolder holder=getHolder();    
  5.   holder.addCallback(this);      
  6.   setFocusable(true);    
  7.  }    
  8.  public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {    
  9.  }    
  10.  public void surfaceCreated(SurfaceHolder holder) {    
  11.  }    
  12.  public void surfaceDestroyed(SurfaceHolder holder) {    
  13.  }    
  14.  @Override   
  15.  public void onWindowFocusChanged(boolean hasWindowFocus) {    
  16.  }    
  17. }  
THE END