2011-09-23 29 views
0

其實我已經創建了一個按鈕數組。現在我想要的是雙擊每個按鈕我想顯示一個按鈕的文本點擊,我已經做了singleClick,但我不知道如何做doubleClick。如何在按鈕陣列上執行doubleClick事件

我有一個按鈕陣列編寫的代碼

LinearLayout layoutVertical = (LinearLayout) findViewById(R.id.liVLayout); 
    LinearLayout rowLayout = null; 

    LayoutParams param = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT, 1); 

    //Create Button 
    for (int i = 0; i<6; i++) 
    { 
     rowLayout = new LinearLayout(this); 
     rowLayout.setWeightSum(7); 
     layoutVertical.addView(rowLayout, param); 

     for(int j=0; j<7; j++) 
     { 
      m_pBtnDay[i][j] = new Button(this);    
      m_pBtnDay[i][j].setGravity(Gravity.CENTER_HORIZONTAL | Gravity.CENTER_VERTICAL); 
      rowLayout.addView(m_pBtnDay[i][j], param); 

      m_pBtnDay[i][j].setTextSize(12); 
      //save button position 
      m_pBtnDay[i][j].setTag(new CalendarForm(i , j)); 
     } 
    } 
+0

爲什麼不能使用手勢api的DoubleTap。 http://stackoverflow.com/questions/4849115/implement-double-click-for-button-in-android –

+0

我如何在我的代碼中實現這個代碼..我看,但不知道如何在我的代碼 – AndroidDev

回答

0

一個我能想到的方法是使用手勢檢測

yourButton.setOnTouchListener(touchListener); 

// Gesture detection 
    gestureDetector = new GestureDetector(new GestureListener()); 
    View.OnTouchListener touchListener = new View.OnTouchListener() { 
     public boolean onTouch(View v, MotionEvent event) { 

// The onTouch method has a View parameter which is a reference to the touched view. Cast 
// this to Button to get its caption: 

      String caption=((Button)v).getText(); 
      if (gestureDetector.onTouchEvent(event)) { 
       return true; 
      } 
      return false; 
     } 
    }; 

private class GestureListener extends GestureDetector.SimpleOnGestureListener { 

    @Override 
    public boolean onDown(MotionEvent e) { 
     return true; 
    } 
    // event when double tap occurs 
    @Override 
    public boolean onDoubleTap(MotionEvent e) { 
     float x = e.getX(); 
     float y = e.getY(); 

     Log.d("Double Click", "Tapped at: (" + x + "," + y + ")"); 

     return true; 
    } 
} 
+0

我怎樣才能得到一個按鈕的文本,以確定這個按鈕被點擊 – AndroidDev

+0

檢查代碼。你調用'getText()'''視圖' – Reno

+0

感謝它完成 – AndroidDev

相關問題