我想知道如果我有一個數組推動是位圖的內容,我怎麼得到點擊時特定圖像的索引。我試圖使用indexOf但沒有運氣,我的代碼如下。 感謝您的時間!如何從位圖數據(從數組)獲取位圖圖像的索引?
代碼:
//First Part is where i add the URLRequest and add the image into contentHolder then onto Stage
function loadImage():void {
for(var i:int = 5; i < somedata.length; i++){
if(somedata[i]){
var loader:Loader = new Loader();
loader.load(new URLRequest("http://www.rentaid.info/rent/"+somedata[i]));
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onImageLoaded);
}
}
}
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;
e.currentTarget.loader.content.height =200;
e.currentTarget.loader.content.y += currentY1;
currentY1 += e.currentTarget.loader.content.height +300;
_contentHolder.mouseChildren = false; // ignore children mouseEvents
_contentHolder.mouseEnabled = true; // enable mouse on the object - normally set to true by default
_contentHolder.useHandCursor = true; // add hand cursor on mouse over
_contentHolder.buttonMode = true;
_contentHolder.addChild(loadedArray[i]);
addChild(_contentHolder);
_contentHolder.addEventListener(MouseEvent.CLICK, gotoscene);
}
}
// then the part where i try to get the index
function gotoscene(e:MouseEvent):void {
var index:Number;
index = loadedArray.indexOf(e.target);
trace(index);
}
編輯:
var viewport:Viewport = new Viewport();
viewport.y = 0;
viewport.addChild(_contentHolder);
你能格式化你的代碼?如何調用gotoscene?刺入黑暗中,將e.target改爲e.currentTarget。 –
嗨,對不起,我編輯了代碼,包括如何在代碼中調用gotoscene,當content_Holder被點擊時,它是一個mouseEvent。我試過e.currentTarget,沒有運氣,它顯示索引爲-1。 – Benyaman
位圖不接受鼠標點擊,因此您接收到的是一個Sprite(或者甚至可能是一個Loader)。所以你應該得到內容,然後查詢你的數組。 – Vesper