我试图从阵列中选择随机照片,然后将它们添加到舞台上购买我在最后一行有这个错误: 1118:使用静态类型Object将值隐式强制转换为可能不相关的类型flash.display:DisplayObject。
Photos = new Array();
photo2 = new img2();
photo3 = new img3();
photo4 = new img4();
//put those images into an array
Photos.push(photo2);
Photos.push(photo3);
Photos.push(photo4);
function getRandomElementOf(Photos:Array):Object {
var idx:int=Math.floor(Math.random() * Photos.length);
trace(idx);
return Photos[idx];
}
public function addPhoto(e:MouseEvent) {
trace("clicked compass");
**stage.addChild(getRandomElementOf(Photos));**
希望尽快得到您的反馈。
答案 0 :(得分:0)
你不能将一个对象添加到舞台上,在你的情况下,你得到的是一个对象,你不能将它们添加到舞台,添加一个图像加载该图像到<s:Image source=""/>
,然后将这个图像组件添加到舞台!
答案 1 :(得分:0)
让你的函数返回一个DisplayObject:
function getRandomElementOf(Photos:Array):DisplayObject
{
var idx:int = Math.floor(Math.random() * Photos.length);
return DisplayObject(Photos[idx]);
}
或演员:
stage.addChild(DisplayObject(getRandomElementOf(Photos)));