通过 getHolder()方法可以得到这个 SurfaceHolder对象_第1页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、通过 getholder()方法可以得到这个 surfaceholder对象原理(来自的sdk文档):拜访surfaceview的底层图形是通过surfaceholder接口来实现的,通过 getholder()办法可以得到这个 surfaceholder对象。你应当实现surfacecreated(surfaceholder)和 surfacedestroyed(surfaceholder)办法来知道在这个surface在窗口的显示和躲藏过程中是什么时候创建和销毁的。surfaceview可以在多线程中被拜访。注 意:一个surfaceview只在surfaceholder.callback

2、.surfacecreated() 和 surfaceholder.callback.surfacedestroyed()调用之间是可用的,其他时光是得不到它的canvas对象的 (null)。我的拜访过程:创建一个surfaceview的子类,实现surfaceholder.callback接口。得到这个surfaceview的surfaceholder对象holder。holder.addcallback(callback),也就是实现surfaceholder.callback接口的类对象。在surfaceholder.callback.surfacecreated()调用过后holde

3、r.lockcanvas()对象就可以得到surfaceview对象对应的canvas对象canvas了。用canvas对象画图。画图结束后调用holder.unlockcanvasandpost()就把图画在窗口中了。surfaceview可以多线程拜访,在多线程中画图。import android.content.context;import android.graphics.canvas;import android.graphics.color;import android.graphics.paint;import android.util.log;import android.vi

4、ew.surfaceholder;import android.view.surfaceview;public class mysurfaceview extends surfaceview implementssurfaceholder.callback private context mcontext;private surfaceholder mholder;public touchscreenadjustersurfaceview(context context,) super(context);mcontext = context;mholder = touchscreenadjus

5、tersurfaceview.this.getholder();mholder.addcallback(touchscreenadjustersurfaceview.this);this.setfocusableintouchmode(true); / to make sure that we can get/ touch events and key events,and/ setfocusable() to make sure we/ can get key eventsoverridepublic void surfacechanged(surfaceholder holder, int

6、 format, int width,int height) / todo auto-generated method stuboverridepublic void surfacecreated(surfaceholder holder) /now you can get the canvas and draw something hereoverridepublic void surfacedestroyed(surfaceholder holder) / todo auto-generated method stubpublic void drawmyshape(pointpostion ps) mcanvas = mholder.lockcanvas();/ draw anything you likemholder.unlockcanvas

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论