2014-03-31 35 views
0

我正在努力實現以下功能:無論MotionEvent目標如何,調用按鈕的onClick(...)回調

我的ViewGroup中有N個按鈕。

------------ 
| button 1 | 
------------ 
| button 2 | 
------------ 
| ... | 
------------ 
| button N | 
------------ 

用戶按下button 1MotionEvent.ACTION_DOWN),那麼他將他的手指button NMotionEvent.ACTION_MOVE),然後他鬆開手指(MotionEvent.ACTION_UP)。

  1. 我想強調任何按鈕,在其用戶移動他的手指 (懸停高亮)
  2. 我想要的button NonClick(...)回調被調用時,用戶釋放他的手指上button N

我試圖爲每個按鈕設置onTouchListener,並且似乎首先被觸摸的按鈕接收所有3個提到的操作(MotionEvent.ACTION_DOWN,MotionEvent.ACTION_MOVEMotionEvent.ACTION_UP)。

我也想過通過覆蓋onInterceptTouchEvent(MotionEvent)按鈕父母的方法ViewGroup來實現功能。這可能是可能的,但似乎沒有辦法檢測從MotionEvent傳遞給onInterceptTouchEvent(MotionEvent)方法的子視圖。

您是否有任何提示實現所描述的功能?

回答

0

我想要實現的實際上是一種使用標準小部件(例如按鈕)的「餅圖菜單」或「徑向菜單」。我沒有使用標準的小部件來實現它,所以我實現了我自己的行爲。這是一個靈感,如果有人需要類似的功能:http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android-apps/4.2.2_r1/com/android/camera/ui/PieRenderer.java。鏈接中的代碼是Google相機應用程序中的代碼,因爲它使用「徑向菜單」來控制相機設置。

相關問題