热门标签 | HotTags
当前位置:  开发笔记 > Android > 正文

Android自定义SurfaceView详解

本文主要介绍AndroidSurfaceView自定义方法,这里对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的资料整理,后续继续补充相关资料,谢谢大家对本站的支持!


推荐阅读
  • 心理学经典:《思考致富》
    《思考致富》是由美国著名成功学大师拿破仑·希尔撰写的一部重要著作,该书基于希尔长达20年的深入研究和访谈,探讨了个人成功的核心要素。书中不仅揭示了成功的关键,还提供了一系列实用的方法和策略。 ... [详细]
  • 深入解析WebP图片格式及其应用
    随着互联网技术的发展,无论是PC端还是移动端,图片数据流量占据了很大比重。尤其在高分辨率屏幕普及的背景下,如何在保证图片质量的同时减少文件大小,成为了亟待解决的问题。本文将详细介绍Google推出的WebP图片格式,探讨其在实际项目中的应用及优化策略。 ... [详细]
  • 提升移动应用用户体验的8个设计策略
    随着移动应用成为数字世界连接的关键桥梁,用户体验(UX)设计的重要性日益凸显。本文将探讨为何优质的UX设计对移动应用的成功至关重要,并分享8个实用的设计技巧,帮助开发者优化用户体验。 ... [详细]
  • 在将 Android Studio 从 3.0 升级到 3.1 版本后,遇到项目无法正常编译的问题,具体错误信息为:org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:processDemoProductDebugResources'。 ... [详细]
  • 嵌套列表的扁平化处理
    本文介绍了一种方法,用于遍历嵌套列表中的每个元素。如果元素是整数,则将其添加到结果数组中;如果元素是一个列表,则递归地遍历这个列表。此方法特别适用于处理复杂数据结构中的嵌套列表。 ... [详细]
  • 实践指南:使用Express、Create React App与MongoDB搭建React开发环境
    本文详细介绍了如何利用Express、Create React App和MongoDB构建一个高效的React应用开发环境,旨在为开发者提供一套完整的解决方案,包括环境搭建、数据模拟及前后端交互。 ... [详细]
  • 本文详细介绍了如何在Android L版本中应用Material Design的主题和布局,包括Material主题的应用方法、自定义主题和颜色方案、状态栏和导航条的自定义,以及Material Design布局的特点和兼容性处理。 ... [详细]
  • 本文详细探讨了BCTF竞赛中窃密木马题目的解题策略,重点分析了该题目在漏洞挖掘与利用方面的技巧。 ... [详细]
  • 本文将在前几篇关于Android测试理论知识的基础上,通过ApiDemoTest实例详细探讨如何使用ApplicationTestCase进行Android应用测试。建议读者先阅读Android测试教程系列中的相关内容,以便更好地理解本文的实践部分。 ... [详细]
  • 本文详细介绍了`android.os.Binder.getCallingPid()`方法的功能和应用场景,并提供了多个实际的代码示例。通过这些示例,开发者可以更好地理解如何在不同的开发场景中使用该方法。 ... [详细]
  • 本文介绍了一个使用Slideview组件实现循环轮播效果的例子,并将其作为ListView顶部的一项。此ListView包含了两种不同的模板设计,一种以Slideview为核心,另一种则是标准的单元格模板,包含按钮和标签。 ... [详细]
  • 如何高效解决Android应用ANR问题?
    本文介绍了ANR(应用程序无响应)的基本概念、常见原因及其解决方案,并提供了实用的工具和技巧帮助开发者快速定位和解决ANR问题,提高应用的用户体验。 ... [详细]
  • 本文详细探讨了Linux系统中进程内存占用的四种计算方式——VSS(虚拟集大小)、RSS(常驻集大小)、PSS(比例集大小)和USS(唯一集大小),并分析了它们各自的特性和应用场景。 ... [详细]
  • 1#include2#defineM1000103#defineRGregister4#defineinf0x3f3f3f3f5usingnamespacestd;6boolrev ... [详细]
  • 根据官方定义,RxJava是一种用于异步编程和可观察数据流的API。其核心特性在于流式处理能力和丰富的操作符支持。 ... [详细]
author-avatar
陈氏女子2602926065
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有