在Youtube等视频播放器上,我经常看到当用户点按视频视图时,会出现一种叠加效果,用户可以选择以下操作:“分享”,“添加到播放列表”,“暂停”,基本上它是开发人员想要的。开发人员似乎能够选择图标是什么,去哪里等等。
我想知道它是如何完成的。例如,他们使用带覆盖的VideoView吗?他们是否在VideoView顶部使用带有VideoView和RelativeLayout的FrameLayout?我只是需要一些正确方向的建议,因为我不知道从哪里开始。谢谢。为简单起见,我希望在我的活动中添加 Youtube 风格的视频播放器。通过 Youtube 风格,我指的是前面提到的互动。
答案 0 :(得分:0)
我想知道它是如何完成的
我确信实施方式差异很大。
例如,他们是否使用带叠加的VideoView?
AFAIK,很少有专业级应用使用VideoView
,因为MediaPlayer
几乎没有提供任何事件或控制。更有可能的是,他们正在使用由VideoView
或第三方媒体库(例如,ExoPlayer)支持的其他内容。
他们是否在VideoView顶部使用带有VideoView和RelativeLayout的FrameLayout?
不,因为那将是两个RelativeLayout
小部件。但是,无论他们的视频表面可能位于FrameLayout
或uiautomatorviewer
,而叠加层是同一容器的另一个子节点,但我确信还有其他方法。
欢迎您使用 {{1}} 来了解有关特定感兴趣应用的视图层次结构的更多信息。