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

移动开发 Android 游戏开发
本文简单讨论以后Android游戏引擎模板的架构问题。在Android游戏开发教程之二:View类与SurfaceView类中我们已经谈到,SurfaceView类是有很多优势的,所以在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. }  
责任编辑:闫佳明 来源: jizhuomi
相关推荐

2013-05-20 17:33:44

Android游戏开发自定义View

2013-05-20 17:51:47

Android游戏开发SurfaceView

2011-08-02 11:17:13

iOS开发 View

2023-08-10 17:14:52

鸿蒙自定义弹窗

2015-02-11 17:49:35

Android源码自定义控件

2013-05-02 14:08:18

2016-12-26 15:25:59

Android自定义View

2009-06-08 20:13:36

Eclipse自定义控

2016-11-16 21:55:55

源码分析自定义view androi

2013-04-01 14:35:10

Android开发Android自定义x

2011-12-05 15:02:21

Knockout

2013-05-20 17:04:09

2017-03-14 15:09:18

AndroidView圆形进度条

2011-05-05 13:30:17

GridViewListView布局

2012-05-18 10:52:20

TitaniumAndroid模块自定义View模块

2013-11-13 00:51:22

微信微信公号微信公众账号

2011-08-18 09:44:33

iPhone SDK仪表控件UIDialView

2016-04-12 10:07:55

AndroidViewList

2017-05-19 10:03:31

AndroidBaseAdapter实践

2014-09-24 11:45:15

微信企业号开发
点赞
收藏

51CTO技术栈公众号