Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> android中使用Activity實現監聽手指上下左右滑動

android中使用Activity實現監聽手指上下左右滑動

編輯:關於Android編程

用Activity的onTouchEvent方法實現監聽手指上下左右滑動

應用了Activity的ontouchEvent方法監聽手指點擊事件,手指滑動的時候會先按下,滑倒另一個地方再抬起,我們就可以根據按下的坐標和抬起的坐標算出用戶是往哪一個方向滑動了。

package com.example.testtt;

import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.widget.Toast;

public class MainActivity extends Activity {
 //手指按下的點為(x1, y1)手指離開屏幕的點為(x2, y2)
 float x1 = 0;
 float x2 = 0;
 float y1 = 0;
 float y2 = 0;
 
 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 }
 
 @Override
 public boolean onTouchEvent(MotionEvent event) {
 //繼承了Activity的onTouchEvent方法,直接監聽點擊事件
 if(event.getAction() == MotionEvent.ACTION_DOWN) {
  //當手指按下的時候
  x1 = event.getX();
  y1 = event.getY();
 }
 if(event.getAction() == MotionEvent.ACTION_UP) {
  //當手指離開的時候
  x2 = event.getX();
  y2 = event.getY();
  if(y1 - y2 > 50) {
  Toast.makeText(MainActivity.this, "向上滑", Toast.LENGTH_SHORT).show();
  } else if(y2 - y1 > 50) {
  Toast.makeText(MainActivity.this, "向下滑", Toast.LENGTH_SHORT).show();
  } else if(x1 - x2 > 50) {
  Toast.makeText(MainActivity.this, "向左滑", Toast.LENGTH_SHORT).show();
  } else if(x2 - x1 > 50) {
  Toast.makeText(MainActivity.this, "向右滑", Toast.LENGTH_SHORT).show();
  }
 }
 return super.onTouchEvent(event);
 }
 
 
}


  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved