当我启动我的应用程序时,它会显示一个带有启动按钮的页面。
单击它后,将显示八个按钮。对于我的应用程序,我希望每次运行它时,按钮都应该随机化,即它们应该出现在页面上的不同位置。
有人可以帮忙吗?
如果您在数组中有按钮,您可以执行以下操作:
for(1=i; i<=button_array.length; i++) {
button_array[i].x = Math.random() * WIDTH_AVAILABLE;
button_array[i].y = Math.random() * HEIGHT_AVAILABLE;
}
您应该调整宽度和高度,以使按钮不会超出可用空间。这也没有任何重叠检查。
你有 button1...button8
var arr:Array = new Array();
for (var i:int=1; i<=8; i++) {
var btn:Sprite = this["button"+i] as Sprite
arr.push({x:btn.x, y:btn.y})
}
suffle arr
for (i=1; i<=8; i++) {
var btn:Sprite = this["button"+i] as Sprite
btn.x = arr[i-1].x;
btn.y = arr[i-1].y;
}
function shuffleButtons(arrayOfButton:Array):void {
trace ("input: " + arrayOfButton)
for(var i:int=0; i<100; i++) {
var btn1:DisplayObject = arrayOfButton[Math.floor(Math.random()*arrayOfButton.length)] as DisplayObject;
do {
var btn2:DisplayObject = arrayOfButton[Math.floor(Math.random()*arrayOfButton.length)] as DisplayObject;
} while (btn1==btn2);
var foo:Number;
foo = btn1.x;
btn1.x = btn2.x;
btn2.x = foo;
foo = btn1.y;
btn1.y = btn2.y;
btn2.y = foo;
}
}
当您需要调整 set ov 按钮时,请致电
shuffleButtons([button1, button2, button3, button4, button5, button6 ]);