org.osmf.traits 包提供用于创建特定媒体特性的构造块。特性定义媒体元素的功能。
媒体元素的不同实现聚合不同的特性集,具体取决于媒体元素所代表的媒体的特性。例如,音频元素可聚合 IAudible、IPlayable、ITemporal 和 ILoadable 特性。这些不同的特性定义媒体元素的功能,与特定媒体元素实现无关。对于具有 ILoadable 特性的媒体元素,该特性提供媒体元素的加载和卸载功能。类似的,IPlayable 特性的实现使媒体元素能够播放自身。
特性是通过元素的 MediaElement.addTrait()
方法添加到媒体元素的。
媒体元素的实现以下列原则为基础:
- 各特性之间相互独立。因此,一个媒体特性不会扩展另一个媒体特性。
- 各特性调度自己的事件。特性实现可从 MediaTraitBase 类派生来处理事件调度,MediaTraitBase 类扩展 EventDispatcher 并实现 IMediaTrait。
- 特性由 MediaTraitType 枚举类标识。
- 特性应作为单独的类实现。
特性接口是为供媒体元素类使用设计的。特性接口是泛型向外实体,主要特征是有 getter 无 setter,只有那些要求外部可设置的属性(例如,IAudible 的 volume 或 pan 属性)的特性除外。
基特性类是为供子类化 MediaElement 的实现使用设计的。它们通常既有 setter 又有 getter。
类
类 | 说明 |
---|
Tue Jun 12 2018, 11:18 AM Z