2012-12-29 42 views
1

我想再次避免在同一按鈕上單擊事件相同的按鈕連續的按鍵CLIK持續(IE)連續在同一個按鈕點擊如何避免機器人

其是否可以或不可以

回答

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 
    } 
} 

而當你想desactivate你點擊按鈕;只需將布爾值設置爲false:

isClickable = false;

2)方法二:

有上查看的方法,這將讓您的按鈕不可點擊;然後desactivate在您的按鈕聽衆所以沒有對象將要監聽的事件按一下這個按鈕,這樣的:

btn.setClickable(false); 
    btn.setOnClickListener(null); 

注:當你想將你的按鈕點擊一遍,只需設置監聽器這一點,讓它再次點擊(對於第二種方法):

btn.setClickable(true); 
btn.setOnClickListener(this); 

或剛剛更新的布爾isClickable的值(第一種方法)

isClickable = true; 
+0

如果我想再次單擊按鈕後兩個其他點擊意味着它將工作或不工作..如果工作意味着哪種方法將工作@Houcine – yogi

+0

這兩種方法都可以工作,就在您想要停用點擊時按鈕,你會像我在我的回答中所說的那樣做,然後再有兩次點擊你想要的任何東西,你可以通過使用代碼來激活按鈕上的點擊事件:) – Houcine

0

如果要禁用此事件的處理,並將其設置回與以前相同的偵聽器,以便重新啓用它,則可以將onClickListener設置爲null。

當然,Houcine已經寫了很多這樣的解決方案。