zoukankan      html  css  js  c++  java
  • 安卓学习59

    今天学习了安卓的一些知识其中主要的是:

    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 构建,同时Android123 未来后面说到的OpenGL 中的GLSurfaceView 也是从该类实现。

  • 相关阅读:
    was控制台误禁用后的恢复启用办法
    Linux升级内核教程(CentOS7)
    ifcfg-eth配置详解(CentOS6)
    CentOS7和CentOS6的区别
    ftp/sftp定时自动上传文件脚本(CentOS)
    AIX安装JDK1.7教程
    PE文件结构解析
    ffmpeg+libmp3lame库源码安装教程(CentOS)
    kafka安装使用教程
    Weblogic禁用SSLv3和RC4算法教程
  • 原文地址:https://www.cnblogs.com/092e/p/14916716.html
Copyright © 2011-2022 走看看