SurfaceView和TextureView的區別

一、區別

SurfaceView和TextureView均繼承於android.view.View,與其它View不同的是,兩者都能在獨立的線程中繪製和渲染,在專用的GPU線程中大大提高渲染的性能。
SurfaceView專門提供了嵌入視圖層級的繪製界面,開發者可以控制該界面像Size等的形式,能保證界面在屏幕上的正確位置。但也有侷限:

由於是獨立的一層View,更像是獨立的一個Window,不能加上動畫、平移、縮放;
兩個SurfaceView不能相互覆蓋。
TextureView更像是一般的View,像TextView那樣能被縮放、平移,也能加上動畫。TextureView只能在開啓了硬件加速的Window中使用,並且消費的內存要比SurfaceView多,並伴隨着1-3幀的延遲。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章