SurfaceHolder.Callback surface holder

一前文概要说明

首先得简单说明一下Surface与SurfaceHolder.Callback之间的联系。

Surface是android的一个重要元素,用于android画面的图形绘制。而SurfaceView是视图(View)的一个继承类,每一个SurfaceView都内嵌封装一个Surface。通过调用SurfaceHolder可以调用SurfaceView,控制图形的尺寸和大小。而SurfaceHolder是通过getholder()来取得。创立SurfaceHolder对象后,用SurfaceHolder.Call back()来回调SurfaceHolder,对SurfaceView进行控制。

单纯得用文字表述有点绕,因此下面将给出几段代码以供理解。

SurfaceHolderholder=((SurfaceView)findViewById(R.id.cameraPreview)).getHolder();

holder.addCallback(this);

holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);

这样就可以通过callback()对SurfaceView进行修改。

二callback()方法介绍

callback()包括三个函数:

①surfaceCreated(SurfaceHolderholder)

当Surface第一次创建后会立即调用该函数。程序可以在该函数中做些和绘制界面相关的初始化工作,一般情况下都是在另外的线程来绘制界面,所以不要在这个函数中绘制Surface。

参数

holdersurface所创建的SurfaceHolder

②surfaceChanged(SurfaceHolderholder, int format, int width, int height)

当Surface的状态(大小和格式)发生变化的时候会调用该函数,在surfaceCreated调用后该函数至少会被调用一次。

参数

holder 更新surface的SurfaceHolder

format 新的图形格式

width 新的宽度

height 新的高度

③surfaceDestroyed()

当Surface被摧毁前会调用该函数,该函数被调用后就不能继续使用Surface了,一般在该函数中来清理使用的资源。

SurfaceHolder.Callback surface holder

参数

holder所要被删除的surface的SurfaceHolder

  

爱华网本文地址 » http://www.aihuau.com/a/25101016/302870.html

更多阅读

Linux文件系统权限 callback什么意思

主题列表:1.默认权限:umask2.隐藏权限:chattr, lsattr3.特殊权限:SUID/SGID/Sticky Bit4.文件类型:file系统环境:Redhat Fedora Core 6文章作者:wuzhaikof文件与(或)目录是文件系统的具体表现形式,在Linux系统管理部分,文件与目录管理映射了Linux文

转载 SOHU搜狐财经股票数据接口 sohu搜狐视频

原文地址:SOHU搜狐财经股票数据接口作者:文和_好运来2013年12月31日,有博友反应,无法打开,sohu 接口换掉了。。这个我无法控制……http://q.stock.sohu.com/hisHq?code=cn_300228&start=20130930&end=20131231&stat=1&o

声明:《SurfaceHolder.Callback surface holder》为网友撩妹大队长分享!如侵犯到您的合法权益请联系我们删除