Android开发

Android 自定义SurfaceView详解

本文主要是介绍Android 自定义SurfaceView详解,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

       本文简单讨论以后Android游戏引擎模板的架构问题。在Android游戏开发教程之二:View类与SurfaceView类中我们已经谈到,SurfaceView类是有很多优势的,所以在Android游戏开发中还是选择SurfaceView。

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

Java代码

public class cwjView extends SurfaceView implements SurfaceHolder.Callback {  
  
  
 public cwjView(Context context, AttributeSet attrs) {  
 super(context, attrs);  
 SurfaceHolder holder=getHolder();  
 holder.addCallback(this);   
   
 setFocusable(true);  
 }  
  
 public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {  
   
   
 }  
 
 public void surfaceCreated(SurfaceHolder holder) {  
   
   
 }  
 
 public void surfaceDestroyed(SurfaceHolder holder) {  
   
 
   
 }  
  
 @Override 
 public void onWindowFocusChanged(boolean hasWindowFocus) {  
   
 }  
    
} 

       以上就是对Android SurfaceView的资料整理,后续继续补充相关资料,谢谢大家对本站的支持!

这篇关于Android 自定义SurfaceView详解的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!