关于如何在触摸屏上定义单击/点击,有很多选项。例如,其中之一是设置布尔值。
布尔值的示例:
boolean buttonClicked = true;
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if (buttonClicked) {
//do that and this
}
}
});
还有一个
isPressed()
方法:button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if (button.isPressed()) {
//do that and this
}
}
});
它们之间到底有什么区别?以及何时以及为何使用布尔值和方法
isPressed()
? 最佳答案
因为在两个示例中都是指按钮,所以我假设您是指用户点击按钮,而不仅仅是屏幕上的随机触摸。
话虽如此,您提供的两个示例都不好。
在您的第一个示例中,布尔值是无用的,因为它始终为true,因此将始终达到//do that and this
。
在第二个示例中,您的if
语句是无用的,因为onClick
方法的性质仅在点击按钮时才能到达。
侦听按钮按下的好方法是使用单击侦听器,如下所示:
Button button = (Button) findViewById(R.id.buttonId);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Code placed here will run every time the button is tapped
}
});
...其中
R.id.buttonId
是布局中按钮的ID。