本文介紹了如何在 Android 中檢測向左或向右滑動?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
我在 android 中有一個 EditText
視圖.在此我想檢測向左或向右滑動.我可以使用下面的代碼在空白處獲取它.但是當我在 EditText
上滑動時,這不起作用.我怎么做?如果我做錯了什么,請告訴我.謝謝.
I have an EditText
view in android. On this I want to detect swipe left or right. I am able to get it on an empty space using the code below. But this does not work when I swipe on an EditText
. How do I do that? Please let me know If I am doing something wrong. Thank you.
使用的代碼:
switch (touchevent.getAction())
{
case MotionEvent.ACTION_DOWN:
{
oldTouchValue = touchevent.getX();
break;
}
case MotionEvent.ACTION_UP:
{
float currentX = touchevent.getX();
if (oldTouchValue < currentX)
{
// swiped left
}
if (oldTouchValue > currentX )
{
swiped right
}
break;
}
}
推薦答案
最簡單的從左到右滑動檢測器:
在您的活動類中添加以下屬性:
In your activity class add following attributes:
private float x1,x2;
static final int MIN_DISTANCE = 150;
并覆蓋 onTouchEvent()
方法:
@Override
public boolean onTouchEvent(MotionEvent event)
{
switch(event.getAction())
{
case MotionEvent.ACTION_DOWN:
x1 = event.getX();
break;
case MotionEvent.ACTION_UP:
x2 = event.getX();
float deltaX = x2 - x1;
if (Math.abs(deltaX) > MIN_DISTANCE)
{
Toast.makeText(this, "left2right swipe", Toast.LENGTH_SHORT).show ();
}
else
{
// consider as something else - a screen tap for example
}
break;
}
return super.onTouchEvent(event);
}
這篇關于如何在 Android 中檢測向左或向右滑動?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!
【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!