我已經做了一個應用程序,它在Ver 4.0以下的設備上運行得非常好,或者我們可以說ics,但是上面的它不能正常工作。 在我的應用程序中,我試圖同時在兩個按鈕上進行多點觸控,並且它在4.0以下版本中工作正常。 action_mask的值在觸摸和關閉觸摸時是6次方,而在4.0以上的版本中,其值爲1,2,0。 爲什麼這麼做?android-爲什麼不同的設備有不同的Action_mask值
enter code here
@override
public boolean ontouch(Event ev , MotionEvent event)
{
int actionResolved = event.getAction() & MotionEvent.ACTION_MASK;
int action = paramMotionEvent.getAction() & MotionEvent.ACTION_POINTER_INDEX_MASK;
// int actionShift = paramMotionEvent.getAction() & MotionEvent.ACTION_POINTER_INDEX_SHIFT;
Log.i("fil", "action resolved" +actionResolved);
if(i==MotionEvent.ACTION_DOWN)
{
Log.i("fil", "action down");
Log.i("fil", "action down value" +MotionEvent.ACTION_DOWN);
}
if(actionResolved == 5);
{
Log.i("fil", "action resolved" +actionResolved);
scannerview1.startAnimation(anim1);
scannerView2.startAnimation(anim1);
}
if(actionResolved ==6)
{
scannerView2.clearAnimation();
scannerview1.clearAnimation();
}
return true;
}
只需使用枚舉常量,而不是,然後你不必擔心。例如MotionEvent.ACTION_POINTER_2_DOWN – Simon 2013-03-02 06:47:31
實際上我正在使用action_mask值來執行一些特定的任務。因爲action_pointer_down沒有像文檔說的那樣工作。有沒有其他方法可以在不同的觸摸事件上執行不同的任務? – 2013-03-02 07:31:18
然後請發佈您的代碼並準確描述它如何不按照文檔工作。我不喜歡猜謎遊戲。 – Simon 2013-03-02 07:59:01