android MotionEvent 擷取長按壓時間長,androidmotionevent

來源:互聯網
上載者:User

android MotionEvent 擷取長按壓時間長,androidmotionevent

思路:

1.記錄ACTION_DOWN的aX, aY座標;

2.在ACTION_MOVE判斷是否移動,移動則取消記錄時間,沒移動就記錄;

3.記錄時間,按下座標,移動座標分別顯示在TextView aa, bb, cc;

//聲明

1 public class MainActivity extends ActionBarActivity {2     private static TextView aa, bb, cc;3     private float atime;4     private float aX, aY;5     private boolean mPressBreak = false;

//指定

1 aa = (TextView) findViewById(R.id.textView1);2 bb = (TextView) findViewById(R.id.textView2); 3 cc = (TextView) findViewById(R.id.textView3);

 

//擷取按壓時間長

 1 @Override 2     public boolean onTouchEvent(MotionEvent event) { 3         // TODO Auto-generated method stub 4         super.onTouchEvent(event); 5         String str = ""; 6         switch (event.getAction()) { 7         case MotionEvent.ACTION_DOWN: 8             aX = event.getX(); 9             aY = event.getY();10             str = String.valueOf(aX) + " , " + String.valueOf(aY);11             bb.setText(str);12             mPressBreak = false;13             break;14         case MotionEvent.ACTION_MOVE:15 16             atime = (event.getEventTime() - event.getDownTime()) / 1000;17             str = String.valueOf(event.getX()) + " , "18                     + String.valueOf(event.getY());19             if ((Math.abs((event.getX() - aX)) > 10)20                     || (Math.abs(event.getY() - aY) > 10)) {21                 atime = 0;22                 mPressBreak = true;23             }24             break;25 26         }27 28         if (!mPressBreak) {29             aa.setText(String.valueOf((int) (atime)));30             cc.setText(str);31         }32 33         return true;34     }

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.