我希望在同一个按钮上再次避免点击事件(即)连续点击相同的按钮
是否可能
答案 0 :(得分:2)
是的,有可能以不同的方式:
1)第一种方法:使用布尔变量并在需要时更新它:
boolean isClickable = true;
Button btn;
// other declarations..
onCreate方法中的//:
btn = (Button) findViewById(R.id.btn);
btn.setOnClickListener(this);
onClick()
方法:
@Override
public void onClick(View v) {
if(isClickable) {
//this code will be executed only when you set the boolean isClickable to true
//your code here
}
}
当您要取消激活时,单击按钮;只需将布尔值设置为false:
isClickable = false;
2)第二种方法:
View上有一个方法,让你的按钮不可点击;然后停用Button上的监听器,这样没有对象会监听事件点击你的按钮,如下所示:
btn.setClickable(false);
btn.setOnClickListener(null);
NB: 当你想再次点击你的按钮时,只需将听众设置为此并再次点击它(对于第二种方法):
btn.setClickable(true);
btn.setOnClickListener(this);
或者只是更新布尔值isClickable的值(对于第一种方法)
isClickable = true;
答案 1 :(得分:0)
如果要禁用此事件的处理,可以将onClickListener设置为null,并将其设置回您之前使用的同一个侦听器,以便重新启用它。
当然,正如Houcine写的那样,有许多解决方案。