【问题标题】:Video player controls (Play/Pause etc.) display as overlay视频播放器控件(播放/暂停等)显示为叠加
【发布时间】:2013-04-08 11:06:14
【问题描述】:

我正在使用 Windows 7 上的 SDK 4.1 在 Flash Builder 中创建自定义视频播放器。

我在 HBox 中创建了视频播放器控件,例如播放/暂停、进度条等。

现在我想在用户鼠标悬停在显示对象上时显示这些控件,就像在 vimeo.com 视频播放器中一样,并在悬停时删除/禁用。

我当前的 .mxml 页面结构类似于http://i48.tinypic.com/15x4w7a.png

我只是通过给 HBox 高度显示/隐藏视频容器鼠标悬停事件上的视频播放器控件 HBox。

如何在视频播放器中实现叠加功能?

任何网络链接和源代码都将受到高度赞赏。

【问题讨论】:

  • 使用状态,然后分配鼠标移动事件加载“状态2”超过400ms,鼠标关闭事件再次加载“状态1”

标签: air flex4 flash-builder overlay video-player


【解决方案1】:

解决方案是使用 Flex 容器,该容器允许内容叠加在其他内容之上。根据设计,VBoxHBox 容器不允许这样做。他们在垂直或水平布局中布局其内容,没有重叠。

您可以使用CanvasGroup 容器将组件覆盖在其他组件之上。由于您使用的是 Flex 4,因此我建议您使用 Group 而不是 Canvas ... 和 VGroup 而不是 VBox ... 和 HGroup 而不是 HBox

这是您可以使用 Flex 4 类进行的简单布局:

<s:Group>
    <s:VideoDisplay top="0" bottom="0" left="0" right="0" />
    <s:HGroup bottom="0" left="0" right="0"/>
</s:Group>

VideoDisplay 组件是您用来显示视频的任何组件。请注意,top/bottom/left/right 属性告诉父 Group 对象布局此组件,使其顶部距父(组)的顶部边缘 0 像素(底部/左/右边缘类似)。

HGroup 组件是保存播放器控件的容器。 HGroup 定位为距父容器的底部、左侧和右侧边缘 0 像素。

您应该将可见属性HGroup(或HBox)容器设置为false,而不是在鼠标悬停时更改播放器控件容器的高度。

正如他们所说,一张图片胜过一千个单词。但是在 StackOverflow 上,代码值一千张图片。如果这个答案没有帮助,您应该编辑您的问题并添加您正在使用的实际代码:)

【讨论】:

  • 非常感谢您的回答。下次我会记得发布代码而不是图像。谢谢
  • @vkwave 不用担心!我不是故意听起来居高临下或类似的……有时一张图片有助于解释难以描述的事情。通常,显示代码直截了当,并且会阻止人们建议您可能已经尝试过的常见事情。干杯! :)
猜你喜欢
  • 2021-06-20
  • 1970-01-01
  • 1970-01-01
  • 2019-09-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-16
  • 2015-09-03
  • 1970-01-01
相关资源
最近更新 更多