android 屏幕监听滑动事件
16lz
2021-01-23
android 屏幕监听滑动事件
import android.app.Activity;import android.content.Intent;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import android.view.MotionEvent;import android.view.View;import android.view.Window;import android.widget.Toast;import meide.com.activity.RightActivity;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(); Intent intent = new Intent(getApplicationContext(), RightActivity.class); startActivity(intent); } } return super.onTouchEvent(event); }}
更多相关文章
- Android监听屏幕锁屏
- android inputmanager中事件的传递流程
- Android屏幕尺寸、标题栏高度、状态栏高度、当前View尺寸
- android ListView嵌套checkbox并取代checkbox点击事件
- EventBus 《三》 事件的具体用法及其讲解
- Android 利用隐藏API实现屏幕亮度调节