我正在学习Suface、Suface Flinger、SurfaceView、SurfaceHolder和Bitmap的文档。我找到了以下定义:
Surface
Surface是像素的集合。Surface是一个对象,它持有正在合成到屏幕上的像素。你在屏幕上看到的每个窗口(对话框、全屏活动、状态栏)都有自己的表面,它们各自绘制,并且Surface Flinger按正确的Z顺序将它们呈现到最终显示器中。一个surface通常有多个缓冲区(通常是两个),用于双缓冲渲染:应用程序可以绘制其下一个UI状态,而Surface Flinger使用最后一个缓冲区合成屏幕,而不需要等待应用程序完成绘制。
SurfaceView
这个类用于向用户呈现实时相机预览。
SurfaceView是View的特殊实现,它还创建了自己的专用Surface,供应用程序直接绘制(在正常视图层次结构之外,否则必须共享窗口的单个Surface)
Bitmap
位图是像素的包装器,它只是一组带有其他方便函数的像素。
Canvas
Canvas是包含所有绘图方法的类。它类似于Java中的AWT/Swing Graphics类。它具有关于如何绘制、框等的所有逻辑。画布在位图上操作。
但我不清楚SurfaceHolder和SurfaceFlinger的定义,根据以上定义,位图也是像素的容器,Surface也是。
您可以帮助我清楚地理解所有这些对象的定义吗?
但我不清楚SurfaceHolder和SurfaceFlinger的定义,根据以上定义,位图也是像素的容器,Surface也是。
您可以帮助我清楚地理解所有这些对象的定义吗?