【发布时间】:2014-05-24 12:02:40
【问题描述】:
我在循环中将多个位图图像添加到精灵中(每个图像添加到 1 个精灵中),然后将所有精灵添加到 1 个 _contentHolder(Sprite) 中,然后将其添加到视口中。
问题是,循环内添加的多个精灵,一切都显示没有问题,但只有最后添加的精灵是可点击的。在可点击之前没有添加任何精灵。想知道问题是什么,它们没有重叠,当我将鼠标悬停在所有精灵的顶部时,它变成了鼠标点击器,但它不会点击。
感谢您的宝贵时间!
我的代码:
function onImageLoaded(e:Event):void {
loadedArray.push(e.target.content as Bitmap);
for(var i:int = 0; i < loadedArray.length; i++){
var currentY1:int = 200;
var image: Sprite= new Sprite;
e.currentTarget.loader.content.height =200;
e.currentTarget.loader.content.y += currentY1;
image.mouseChildren = true; // ignore children mouseEvents
image.mouseEnabled = true; // enable mouse on the object - normally set to true by default
image.useHandCursor = true; // add hand cursor on mouse over
image.buttonMode = true;
image.addChild(loadedArray[i]);
_contentHolder.addChild(image);
}
newArray.push(image);
var viewport:Viewport = new Viewport();
viewport.y = 0;
viewport.addChild(_contentHolder);
var scroller:TouchScroller = new TouchScroller();
scroller.width = 300;
scroller.height = 265;
scroller.x = 10;
scroller.y = 100;
scroller.viewport = viewport;
addChild(scroller);
image.addEventListener(MouseEvent.CLICK, gotoscene);
}
loadImage();
编辑:
function gotoscene(e: MouseEvent):void{
var index:Number;
index = newArray.indexOf(e.target);
trace(index);
blackBox.graphics.beginFill(0x000000);
blackBox.graphics.drawRect( -1, -1, stage.width, stage.height);
blackBox.alpha = 0.7;
addChild(blackBox);
var originalBitmap : BitmapData = loadedArray[index].bitmapData;
var duplicate:Bitmap = new Bitmap(originalBitmap);
duplicate.width = stage.width;
_contentHolder1.addChild(duplicate);
// Use counter here to only add _contentHolder1 once
//Assuming that `samedata` is a class member (I can't see the rest of your code)
addChild(_contentHolder1);
}
编辑2:
private var image:Array = new Array;
//In the For loop
image[i] = new Sprite();
image[i].addChild(loadedArray[i]);
image[i].addEventListener(MouseEvent.CLICK, gotoscene);
function gotoscene(e:MouseEvent):void{
index = image.indexOf(e.target);
trace(index);
}
【问题讨论】:
-
也许这会给你一些想法:stackoverflow.com/questions/19739366/…
-
我查看了那个链接,但我仍然不太确定为什么我的精灵不会点击。至于只有最后一个精灵点击而不是任何其他的原因是什么
标签: actionscript-3 actionscript