as3:错误:将void类型的值隐式强制转换为不相关的类型

时间:2010-12-13 18:09:11

标签: actionscript-3 metadata

我正在尝试设置元数据对象,如下所示:

public function myFunction(event:MediaFactoryEvent):void {

var resource:URLResource = new URLResource("http://mediapm.edgesuite.net/osmf/content/test/logo_animated.flv");
            var media:MediaElement = factory.createMediaElement(resource);

// Add Metadata for the URLResource
var MediaParams:Object = {
  mfg:"Ford",
  year:"2008",
  model:"F150",
}

media.addMetadata("MediaParams", 
  (new Metadata()).addValue("MediaParams", MediaParams) ); 

当我尝试这个时,我得到:

  

将void类型的值隐式强制转换为不相关的类型org.osmf.metadata:元数据。   (new Metadata())。addValue(“MediaParams”,M​​ediaParams));   我实际上需要在几个深度级别的元数据,因为元数据被传递而另一个函数需要元数据。

如何以我想要的方式将元数据添加到我的URLResource?谢谢!

1 个答案:

答案 0 :(得分:2)

这里的问题是您尝试在addMetadata()方法中添加值。 addValue()可能返回void,其中需要Metadata个对象。

试试这个

var metadata:Metadata = new Metadata();
metadata.addValue("MediaParams", MediaParams);
media.addMetadata("MediaParams", metadata );