2011-10-29 39 views
0

我有一個應用程序,它有一個onclick和onlongclick監聽器的圖像按鈕。但是,長按按鈕時,這兩個偵聽器都正在執行。有什麼建議麼?ImageButton onlongpress也會導致onclick

d1.setOnLongClickListener(new OnLongClickListener() { 

     @Override 
     public boolean onLongClick(View v) { 
      selectMode = true; 
      dockNum = 1; 
      sd1.open(); 
      d1.cancelLongPress(); 
      return false; 
     } 

    }); 

...d1.setOnClickListener(this); 

...case R.id.d1: 
     if(d1s.equals("empty")) { 
      selectMode = true; 
      dockNum = 1; 
      sd1.open(); 
     } else { 
      Intent d1i = pm.getLaunchIntentForPackage(d1s); 
      startActivity(d1i); 
     } 
    break; 
+0

你能告訴我們你用來分配onClick和onLongClick監聽器的代碼嗎? –

+0

好吧,我添加了代碼 – user1015747

回答

5

我認爲你的問題與你在onLongClick方法中返回false的事實有關。嘗試返回true(儘管事實上你取消了長按,返回true只是說「我已經處理了這個,不需要進一步的操作。」)。

+0

它現在正在完美工作。謝謝。 – user1015747

相關問題