是的。您应该为每个对象创建事件侦听器。为此,您应该创建一个函数,并且可以使用它来处理您的事件。请看下面的例子
button1.addEventListener('click', showMessage); //Adding event handlers to button1
button2.addEventListener('click', showMessage); //Adding event handlers to button2
function showMessage(event){
alert("You have clicked " + event.source.title + " button");
//event.source denotes the control which fired the event
}
在这里,我使用了相同的函数showMessage()
来处理您的点击事件。单击每个按钮时,它将显示一条消息,告诉您单击的按钮。
如果您有许多用于相同目的的按钮,您可以尝试以下操作
var button = [];
var totalButtons = 10;//I'm assuming you have 10 buttons in your screen
for(var index=0; index<totalButtons;index++){
button[i] = Ti.UI.createButton({
title : 'Button ' + (index+1),
width : 20,
height: 50,
});
button[index].addEventListener('click', showMessage);
win.add(button[index]);
}