android中使用Activity实现监听手指上下左右滑动
程序员文章站
2022-04-30 22:44:20
用activity的ontouchevent方法实现监听手指上下左右滑动
应用了activity的ontouchevent方法监听手指点击事件,手指滑动的时候会先按下...
用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); } }
上一篇: 老鸭山药,好吃到爆的营养菜肴
推荐阅读
-
解析Android中实现滑动翻页之ViewFlipper的使用详解
-
详解Android使用CoordinatorLayout+AppBarLayout+CollapsingToolbarLayou实现手指滑动效果
-
详解Android Activity中的几种监听器和实现方式
-
android中使用Activity实现监听手指上下左右滑动
-
Android中实现监听ScrollView滑动事件
-
android中使用Activity实现监听手指上下左右滑动
-
Android中实现监听ScrollView滑动事件
-
详解Android Activity中的几种监听器和实现方式
-
详解Android使用CoordinatorLayout+AppBarLayout+CollapsingToolbarLayou实现手指滑动效果