`
kevin2562
  • 浏览: 118704 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Android游戏开发之旅二 View和SurfaceView

阅读更多
Android游戏开发之旅二 View和SurfaceView

  在Android游戏当中充当主要的除了控制类外就是显示类,在J2ME中我们用Display和Canvas来实现这些,而Google Android中涉及到显示的为view类,Android游戏开发中比较重要和复杂的就是显示和游戏逻辑的处理。这里我们说下 android.view.View和android.view.SurfaceView。SurfaceView是从View基类中派生出来的显示类,直接子类有GLSurfaceView和VideoView,可以看出GL和视频播放以及Camera摄像头一般均使用SurfaceView,到底有哪些优势呢? SurfaceView可以控制表面的格式,比如大小,显示在屏幕中的位置,最关键是的提供了SurfaceHolder类,使用getHolder方法获取,相关的有Canvas lockCanvas()

  Canvas lockCanvas(Rect dirty) 、void removeCallback(SurfaceHolder.Callback callback)、void unlockCanvasAndPost(Canvas canvas) 控制图形以及绘制,而在SurfaceHolder.Callback 接口回调中可以通过下面三个抽象类可以自己定义具体的实现,比如第一个更改格式和显示画面。

abstract void  surfaceChanged(SurfaceHolder holder, int format, int width, int height)

abstract void  surfaceCreated(SurfaceHolder holder)

abstract void  surfaceDestroyed(SurfaceHolder holder) 


对于Surface相关的,Android底层还提供了GPU加速功能,所以一般实时性很强的应用中主要使用SurfaceView而不是直接从View构建,同时后面说到的OpenGL中的GLSurfaceView也是从该类实现。

分享到:
评论

相关推荐

    Android游戏开发之旅

    2.Android游戏开发之旅二 View和SurfaceView 3.Android游戏开发之旅三 View类详解 4.Android游戏开发之旅四 Canvas和Paint实例 5.Android游戏开发之旅五 Path和Typeface 6.Android游戏开发之旅六 自定义View 7....

    自己做的android迷宫小游戏(基于android2.2)

    《Android迷宫小游戏开发详解——基于Android 2.2》 在移动设备上,游戏开发一直是一个热门领域,尤其在Android平台,丰富的API和...通过学习和分析这个项目,你将能够为自己的Android游戏开发之旅打下坚实的基础。

    android 小应用 小游戏(二)

    小游戏(二)”涵盖了Android小游戏开发的基本流程、源码分析、工具使用和性能优化等方面,通过对"ecstasy.apk"的实践研究,你将能够更深入地理解和掌握这些知识点,为自己的Android游戏开发之旅打下坚实基础。

    Android 安卓游戏打地鼠源码.rar

    通过对源码的剖析,开发者可以了解Android游戏的基本架构、图形渲染、事件处理和性能优化等关键点,为自己的游戏开发之旅积累经验。在实际项目中,结合个人创造力和对Android SDK的深入理解,可以开发出更多富有创新...

    Sample_7_2.zip_android

    《Android游戏开发基础:Sample_7_2项目解析》 在Android开发领域,实践是学习的最佳途径之一。...通过逐步理解和修改这个项目,你将能够掌握Android平台上的游戏开发技术,为自己的创意游戏开发之旅开启新的篇章。

    安卓疯狂android最新版

    总的来说,《安卓疯狂android最新版》是一份全面的Android开发教程,它涵盖了从基本概念到高级技术的所有重要知识点,是初学者踏上Android开发之旅的理想起点。通过深入学习和实践,读者不仅可以理解Android系统的...

    android 最佳学习路线

    在开始Android的学习之旅之前,首先需要明确一个清晰的学习路线图。本篇文章将详细介绍学习Android所需的基础知识和技术栈,帮助初学者快速上手并深入掌握Android开发的核心技能。 #### 二、必备基础知识 在正式...

    AndroidGame-PiggyCar:这是我的Android游戏PiggyCar的源代码-Car source code

    《Android游戏开发:深入解析PiggyCar源代码》 在Android平台上,游戏开发一直是一个热门领域,而开源项目更是开发者学习...开源的力量在于分享与学习,希望这款"PiggyCar"能为你的Android游戏开发之旅带来新的启示。

    opensudoku源码

    《OpenSudoku源码解析——探索Android应用开发的奥秘》 ...通过深入分析和学习这个项目,开发者不仅可以提升Android编程技能,还能了解到游戏开发的基本流程和技巧,为自己的Android开发之旅打下坚实的基础。

    android 指南针实例 传感器应用入门

    这个实例将带你深入了解如何使用Android的传感器API来开发一个简单的指南针应用,从而开启你的传感器应用开发之旅。 首先,我们要理解Android中的传感器系统。Android系统提供了一个强大的Sensor框架,允许开发者...

    webveiw加载网页以及全屏播放网络视频

    在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序中内嵌网页内容,实现与网页的交互。WebView不仅能够展示HTML、CSS和JavaScript组成的网页,还可以通过特定的方法实现网络视频的全屏播放。本篇...

Global site tag (gtag.js) - Google Analytics