`

andoird -> 用Activity的onTouchEvent方法实现监听手指上下左右滑动

 
阅读更多

 

 

转自 : http://blog.csdn.net/qiantujava/article/details/9903891

 

用Activity的onTouchEvent方法实现监听手指上下左右滑动

应用了Activity的ontouchEvent方法监听手指点击事件,手指滑动的时候会先按下,滑倒另一个地方再抬起,我们就可以根据按下的坐标和抬起的坐标算出用户是往哪一个方向滑动了。

 

[java] view plain copy
 
  1. package com.example.testtt;  
  2.   
  3. import android.app.Activity;  
  4. import android.os.Bundle;  
  5. import android.view.MotionEvent;  
  6. import android.widget.Toast;  
  7.   
  8. public class MainActivity extends Activity {  
  9.     //手指按下的点为(x1, y1)手指离开屏幕的点为(x2, y2)  
  10.     float x1 = 0;  
  11.     float x2 = 0;  
  12.     float y1 = 0;  
  13.     float y2 = 0;  
  14.       
  15.     @Override  
  16.     protected void onCreate(Bundle savedInstanceState) {  
  17.         super.onCreate(savedInstanceState);  
  18.         setContentView(R.layout.activity_main);  
  19.     }  
  20.       
  21.     @Override  
  22.     public boolean onTouchEvent(MotionEvent event) {  
  23.         //继承了Activity的onTouchEvent方法,直接监听点击事件  
  24.         if(event.getAction() == MotionEvent.ACTION_DOWN) {  
  25.             //当手指按下的时候  
  26.             x1 = event.getX();  
  27.             y1 = event.getY();  
  28.         }  
  29.         if(event.getAction() == MotionEvent.ACTION_UP) {  
  30.             //当手指离开的时候  
  31.             x2 = event.getX();  
  32.             y2 = event.getY();  
  33.             if(y1 - y2 > 50) {  
  34.                 Toast.makeText(MainActivity.this"向上滑", Toast.LENGTH_SHORT).show();  
  35.             } else if(y2 - y1 > 50) {  
  36.                 Toast.makeText(MainActivity.this"向下滑", Toast.LENGTH_SHORT).show();  
  37.             } else if(x1 - x2 > 50) {  
  38.                 Toast.makeText(MainActivity.this"向左滑", Toast.LENGTH_SHORT).show();  
  39.             } else if(x2 - x1 > 50) {  
  40.                 Toast.makeText(MainActivity.this"向右滑", Toast.LENGTH_SHORT).show();  
  41.             }  
  42.         }  
  43.         return super.onTouchEvent(event);  
  44.     }  
  45.       
  46.       
  47. }  

 

分享到:
评论

相关推荐

    android中使用Activity实现监听手指上下左右滑动

    用Activity的onTouchEvent方法实现监听手指上下左右滑动 应用了Activity的ontouchEvent方法监听手指点击事件,手指滑动的时候会先按下,滑倒另一个地方再抬起,我们就可以根据按下的坐标和抬起的坐标算出用户是往哪...

    屏幕的上下左右滑动监听事件详解demo(AS)

    总结来说,“屏幕的上下左右滑动监听事件详解demo(AS)”是一个实用的教程,它演示了如何在Android应用中利用GestureDetector监听和处理屏幕滑动事件。通过这个示例,开发者可以学习到手势识别的基本原理和实践技巧...

    Android上下滑动结束Activity

    5. **注意事项**:在实际开发中,需要注意手势冲突问题,确保这个滑动结束Activity的功能不会影响到其他需要监听滑动的组件。可以将此功能封装在一个自定义的基类Activity中,然后让其他需要该功能的Activity继承自...

    Android在Fragment中实现监听触摸事件

    Fragment是Android应用程序中的一个组件,它可以在Activity中使用,但是它并没有提供onTouchEvent方法来监听触摸事件。因此,我们需要自己实现触摸事件的分发。 在Fragment中监听触摸事件可以使用接口来实现。首先...

    Android Webview滑动监听

    本篇将详细讲解如何在Android Webview中实现滑动监听以及图片的放大缩小功能。 首先,我们要了解`WebView`的基本用法。在Android Studio中,创建一个新的布局XML文件,添加`WebView`组件: ```xml android:id="@...

    实现左右上下监听屏幕滑动操作

    在Android开发中,实现屏幕的左右上下滑动监听是一项常用的功能,这通常涉及到手势识别技术。手势识别使得用户可以通过简单的手指动作与应用进行交互,提高了用户体验。本篇将详细讲解如何在Android应用中实现这一...

    android GestureDetector依赖onTouchEvent判断左右滑动

    标题中的“android GestureDetector依赖onTouchEvent判断左右滑动”指的是通过`GestureDetector`监听`MotionEvent`的`ACTION_DOWN`, `ACTION_MOVE`和`ACTION_UP`事件,来实现手指在屏幕上左右滑动的识别。...

    android 左右滑动出现箭头提示

    在Android开发中,实现左右滑动切换视图并显示箭头提示的功能,通常涉及到ViewFlipper组件和手势识别。ViewFlipper是Android提供的一种布局容器,它可以用来展示多个子视图,并通过动画效果进行切换。在这个场景下,...

    android Activity左右手势滑动

    在Android开发中,Activity是应用...通过以上步骤,我们可以成功地在Android Activity之间实现左右手势滑动。这个功能在许多应用中都非常实用,尤其是在那些需要频繁切换页面的场景下,如新闻阅读应用、图片浏览器等。

    Android代码-android-swipelistview-支持左右滑动.rar

    SwipeListView的核心实现基于Android的ListView,通过覆写其onTouchEvent()方法来捕获用户的滑动操作。在检测到滑动事件后,计算滑动距离和方向,从而控制滑动视图的显示与隐藏。滑动过程中,通过动画效果实现平滑...

    android左右滑动翻页查看图片

    在Android开发中,实现左右滑动翻页查看图片的功能是一项常见的需求,特别是在设计相册、画廊或者幻灯片展示等应用时。本教程将详细讲解如何利用Android的手势识别接口来实现这一功能。 首先,我们需要了解Android...

    android viewFipper实现图片上下左右滑动效果

    4. **监听滑动事件**:你可以使用GestureDetector来检测用户的滑动手势。创建一个GestureDetector实例,重写onDown(), onFling()等方法,当检测到合适的滑动事件时,调用ViewFlipper的相应方法。 ```java ...

    Android WebView上下滑动显示隐藏头部

    webView.setOnTouchListener((v, event) -> gestureDetector.onTouchEvent(event)); ``` 在`onScroll()`方法中,我们可以根据`distanceY`的正负值判断滑动方向,进而控制头部视图的显示与隐藏。如果`distanceY`为正...

    Android 视图上下左右45度滑动效果.zip

    "Android 视图上下左右45度滑动效果.zip"这个压缩包包含的资源是关于如何在Android应用中实现视图的45度角滑动效果,这通常涉及到自定义视图、触摸事件处理以及Android的动画系统。 首先,我们要理解Android中的...

    Android日历可左右活动上下定位收缩

    在Android开发中,创建一个可左右滑动切换月份、上下滑动收缩的日历视图是一项常见的需求。这种功能常用于日程管理应用,为用户提供直观的日期选择方式。"Android日历可左右活动上下定位收缩"这个项目的核心在于实现...

    android中实现左右滑动View

    在Android开发中,实现左右滑动视图通常是通过创建一个可滑动的布局或使用特定的库来达成目的。这个过程涉及到多个知识点,包括布局管理、触摸事件处理、动画效果以及用户交互设计。以下是对这些关键点的详细阐述: ...

    Android 向左向右滑动销毁(finish)Activity, 随着手势的滑动而滑动的效果

    通过设置Transition动画或者使用Android Animation API,可以实现Activity随着手指滑动而滑出屏幕的效果。 四、注意事项 1. 考虑兼容性:不同的设备和Android版本可能对手势的敏感度有不同的要求,因此需要调整...

    Android滑动关闭Activity

    在这个自定义的ViewGroup中,我们可以重写`onTouchEvent`方法来监听用户的滑动事件。以下是一段基本的代码示例: ```java public class SlideFinishLayout extends FrameLayout { private float downX; private ...

    android 左右滑动

    在Android开发中,实现左右滑动的界面效果是常见的需求,尤其在移动端应用设计中,这种交互方式可以提供良好的用户体验,使用户能够轻松地浏览内容或切换页面。本篇文章将详细探讨如何在Android中实现左右滑动的效果...

Global site tag (gtag.js) - Google Analytics