2013-04-08 81 views
1

我是非常新的android開發,我剛開始學習。所以很抱歉這個簡單的問題。兩個動作在一個onlongclick監聽器android按鈕

當我長按按鈕,它將成功傳遞字符串,但當我釋放按鈕時單擊它不會傳遞第二個字符串...請讓我知道問題在哪裏。

+0

究竟你想要做什麼? – krishna 2013-04-08 05:50:32

+0

可能是你在onlongClick返回false .. return true – Pragnani 2013-04-08 05:51:07

+0

請粘貼你的代碼,以便用戶可以瞭解你犯了什麼錯誤,並訪問http://stackoverflow.com/questions/4987670/using-switch-statement-to-處理按鈕單擊以獲取更多信息 – 2013-04-08 05:51:31

回答

0

如果您希望兩個事件在ACTION_DOWN和ACTION_UP處觸發一次,則長按僅觸發一次使用onTouchListener。

編輯:使用這個唯一的,如果你想兩個事件被解僱一個當用戶觸摸視圖,當用戶拿起從view.The代碼手指等,可就是這樣......

textView.setOnTouchListener(new onTouchListener) 
{ 
@Override 
    public boolean onTouch(View v, MotionEvent event) { 


     switch (event.getAction()){ 
     case MotionEvent.ACTION_DOWN: 
      Log.d("DOWN","DOWN"); 
     break; 

     case MotionEvent.ACTION_MOVE: 
      Log.d("MOVE","MOVE"); 
     break; 

     case MotionEvent.ACTION_UP: 
     break; 
     } 
     return true; 
} 
+0

感謝您的幫助。您可以給我適當的java活動代碼,因爲我不瞭解ACTION_DOWN ACTION_UP函數。 – user2189622 2013-04-08 06:27:56

0

嗨你可以使用什麼@pervez其他明智的,你可以使用ToggleButton例如,你可以像這樣使用。

ToggleButton myButton=(ToggleButton)findViewById(R.id.myToggle); 
    myButton.setOnClickListener(new OnClickListener(){ 
    @Override 
    public void onClick(View v){ 
    if(myButton.isChecked()){ 
    doYourMethod1(); 
    }else{ 
    doYourMethod2(); 
} 
    }); 
+0

先生我的問題是當我按住(長按)長按聽衆它會傳遞字符串/文本(開始),當我釋放該按鈕,然後它會通過另一個字符串(停止) – user2189622 2013-04-08 06:33:41