SurfaceView和TextureView区别分析

SurfaceView和TextureView


SurfaceView和TextureView都继承自android.view.View类。它们可以从单独的线程中绘制和渲染,这是与其他视图的主要区别。 Crosswalk单独使用绘图功能,通过专用GPU线程大大提高渲染性能。


SurfaceView提供嵌入视图层次结构内部的专用绘图表面。你可以控制这个曲面的格式和大小; SurfaceView会将表面放置在屏幕上的正确位置。它的行为或多或少地类似于传统桌面系统上的屏幕窗口,例如,X11系统上的XWindow,它可以是无框的,并嵌入在另一个XWindow中。

以下是SurfaceView的两个限制:

不能动画,变换和缩放;

不能覆盖两个SurfaceView。


TextureView看起来像一个普通的View。你可以动画,变换和缩放它,就像一个TextView。 TextureView只能在硬件加速窗口中使用。然而,TextureView将消耗比SurfaceView更多的内存,也可能有1〜3帧延迟。


参考:

1,http://developer.android.com/reference/android/view/SurfaceView.html  
2,http://developer.android.com/reference/android/view/TextureView.html

你可能感兴趣的:(直播,Android,学习笔记)