【问题标题】:What's the difference between VideoView and TextureView and Suraceview in android?android中的VideoView和TextureView和Suraceview有什么区别?
【发布时间】:2016-05-05 08:34:23
【问题描述】:

android中VideoView和TextureView、Suraceview有什么区别?

我什么时候使用它们?

【问题讨论】:

标签: android surfaceview android-videoview textureview


【解决方案1】:

对不起,迟到的答案,只是偶然发现了这个,但 TL;DR 的答案是这样的:

VideoView -> VideoView 扩展了 SurfaceView,本质上就是 SurfaceView + MediaPlayer。为了您的方便,表面和 MediaPlayer 等的拆卸由小部件负责。

SurfaceView-> 根据 Android 开发者的说法:

提供嵌入视图层次结构中的专用绘图表面。您可以控制此表面的格式,如果您愿意,还可以控制它的大小; SurfaceView 负责将表面放置在屏幕上的正确位置

表面是 Z 顺序的,因此它位于持有其 SurfaceView 的窗口后面; SurfaceView 在其窗口中打了一个洞以显示其表面

这意味着它从视图层次结构中获取信息来创建连接到 GPU 的专用绘图区域。其缺点是没有花哨的视图内容,例如动画和过渡。但性能更高

TextureView -> 来自 Android 开发者:

与 SurfaceView 不同,TextureView 不会创建单独的窗口,而是像常规视图一样运行。这个关键区别允许对 TextureView 进行移动、转换、动画等操作

你知道了,TextureView 的缺点意味着,由于它是你的视图层次结构的一部分,它会在视图传递期间自行重绘它,从而消耗更多资源,但是你将有动画、过渡、alpha 等。

【讨论】:

    猜你喜欢
    • 2011-05-05
    • 2013-01-13
    • 1970-01-01
    • 2021-08-06
    • 2021-05-24
    • 2017-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多