android_Surface,SurfaceView,Canvas的关系





  Surface,SurfaceView,Canvas的关系:   
  android.view包下,public class Surface implements Parcelable{ *** }  //构造函数(可)传入SurfaceTexture对象. //Handle onto a raw buffer that is being managed by the screen compositor.
    public class SurfaceView extends View{ *** } //内部有mSurface变量,SurfaceHolder变量.//通过mSurfaceHolder可以获得Canvas,内部实际调用mSurface.lockCanvas()方法.
    public class View implements Drawable.Callback, KeyEvent.Callback,AccessibilityEventSource{ *** } //内部绘制对象的传递使用Canvas. //setFilterTouchesWhenObscured(*),安全方面使用.
    public interface SurfaceHolder{ *** } //Abstract interface to someone holding a display surface. //SurfaceView使用.
  android.graphics包下,public class SurfaceTexture{ *** } //Captures frames from an image stream as an OpenGL ES texture. //流可能来自照相机预览或者视频解码;
      //构造必须传入指定的OpenGLTexture的名字. //名字由GLES20.glGenTextures(*)产生.  //当指定输出为Camera,MediaPlayer时,当作SurfaceHolder使用.
    public class Canvas{ *** } //The Canvas class holds the "draw" calls. //内部数据通过Bitmap存储.


发布了8 篇原创文章 · 获赞 7 · 访问量 12万+

猜你喜欢

转载自blog.csdn.net/liu31187/article/details/22870993