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开发使用自定义View将圆角矩形绘制在Canvas上的方法
这篇文章主要介绍了Android开发使用自定义View将圆角矩形绘制在Canvas上的方法,结合实例形式分析了Android自定义view绘制圆角矩形的相关方法与使用技巧,需要的朋友可以参考下2017-10-10
android:descendantFocusability方法介绍
开发中很常见的一个问题,项目中的listview不仅仅是简单的文字,常常需要自己定义listview,问题就出现了,可能会发生点击每一个item的时候没有反应,无法获取的焦点2012-11-11
Android 游戏引擎libgdx 资源加载进度百分比显示案例分析
因为案例比较简单,所以简单用AndroidApplication -> Game -> Stage 搭建框架感兴趣的朋友可以参考下2013-01-01
Android WorkManager实现后台定时任务流程详解
WorkManager是Android Jetpack的一个强大的组件,用于处理后台耗时任务。后台任务可以是一次性的,也可以是重复的,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧2023-01-01
android使用PullToRefresh框架实现ListView下拉刷新上拉加载更多
这篇文章主要介绍了android使用PullToRefresh框架实现ListView下拉刷新上拉加载更多,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-12-12


最新评论