欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android屏幕手勢檢測的實現(xiàn)代碼

 更新時間:2017年11月08日 11:28:17   作者:_彼岸雨敲窗_  
這篇文章主要介紹了Android屏幕手勢檢測的實現(xiàn)代碼,非常不錯,具有參考借鑒價值,需要的朋友可以參考下

Android 關(guān)于手勢的操作提供兩種形式:一種是針對用戶手指在屏幕上劃出的動作而進行移動的檢測,這些手勢的檢測通過android提供的監(jiān)聽器來實現(xiàn);另一種是用 戶手指在屏幕上滑動而形成一定的不規(guī)則的幾何圖形(即為多個持續(xù)觸摸事件在屏幕形成特定的形狀);本文給大家分享android屏幕手勢檢測的實現(xiàn)代碼。

Android屏幕手勢檢測的原理是由于觸摸事件的檢測與識別比較繁瑣,因此Android提供了手勢檢測器幫助開發(fā)者識別手勢。利用手勢檢測器可以自動辨別常用的幾個手勢事件,如點擊、長按、滑動等,從而使開發(fā)者專注于業(yè)務邏輯,不必在手勢的行為判斷上絞盡腦汁。

layout/activity_gesture_detector.xml界面布局代碼如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertical"
  android:paddingTop="10dp">
  <TextView
    android:id="@+id/tv_gesture"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:text="這里查看手勢結(jié)果"
    android:textColor="@color/black"
    android:textSize="17sp" />
</LinearLayout>

GestureDetectorActivity.java邏輯代碼如下:

package com.fukaimei.gesturedetector;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.GestureDetector;
import android.view.MotionEvent;
import android.widget.TextView;
import com.fukaimei.gesturedetector.util.DateUtil;
public class GestureDetectorActivity extends AppCompatActivity {
  private TextView tv_gesture;
  private GestureDetector mGesture;
  private String desc = "";
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_gesture_detector);
    tv_gesture = (TextView) findViewById(R.id.tv_gesture);
    mGesture = new GestureDetector(this, new MyGestureListener());
  }
  public boolean dispatchTouchEvent(MotionEvent event) {
    mGesture.onTouchEvent(event);
    return true;
  }
  final class MyGestureListener implements GestureDetector.OnGestureListener {
    @Override
    public final boolean onDown(MotionEvent event) {
//     desc = String.format("%s%s 您按下來了\n", desc, DateUtil.getNowTime());
//     tv_gesture.setText(desc);
      //onDown的返回值沒有作用,不影響其它手勢的處理
      return true;
    }
    @Override
    public final boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
      float offsetX = e1.getX() - e2.getX();
      float offsetY = e1.getY() - e2.getY();
      if (Math.abs(offsetX) > Math.abs(offsetY)) {
        if (offsetX > 0) {
          desc = String.format("%s%s 您向左滑動了一下\n", desc, DateUtil.getNowTime());
        } else {
          desc = String.format("%s%s 您向右滑動了一下\n", desc, DateUtil.getNowTime());
        }
      } else {
        if (offsetY > 0) {
          desc = String.format("%s%s 您向上滑動了一下\n", desc, DateUtil.getNowTime());
        } else {
          desc = String.format("%s%s 您向下滑動了一下\n", desc, DateUtil.getNowTime());
        }
      }
      tv_gesture.setText(desc);
      return true;
    }
    @Override
    public final void onLongPress(MotionEvent event) {
      desc = String.format("%s%s 您長按了一下下\n", desc, DateUtil.getNowTime());
      tv_gesture.setText(desc);
    }
    @Override
    public final boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {
      return false;
    }
    @Override
    public final void onShowPress(MotionEvent event) {
    }
    @Override
    public boolean onSingleTapUp(MotionEvent event) {
      desc = String.format("%s%s 您輕輕點了一下\n", desc, DateUtil.getNowTime());
      tv_gesture.setText(desc);
      //返回true表示我已經(jīng)處理了,別處不要再處理這個手勢
      return true;
    }
  }
}

Demo程序運行效果界面截圖如下:

這里寫圖片描述

總結(jié)

以上所述是小編給大家介紹的Android屏幕手勢檢測的實現(xiàn)代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Android AccessibilityService實現(xiàn)微信搶紅包插件

    Android AccessibilityService實現(xiàn)微信搶紅包插件

    這篇文章主要介紹了Android AccessibilityService實現(xiàn)微信搶紅包插件的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • Android編程顯示網(wǎng)絡上的圖片實例詳解

    Android編程顯示網(wǎng)絡上的圖片實例詳解

    這篇文章主要介紹了Android編程顯示網(wǎng)絡上的圖片,結(jié)合實例形式詳細分析了Android顯示網(wǎng)絡圖片的流程與具體操作技巧,需要的朋友可以參考下
    2016-10-10
  • Android變形(Transform)之Matrix用法

    Android變形(Transform)之Matrix用法

    Android的2D變形(包括縮放,扭曲,平移,旋轉(zhuǎn)等)可以通過Matrix來實現(xiàn),本文研究了一下;接下來就將我這倆天研究的東西和大家分享下,先來看看Matrix的用法感興趣的你可不要錯過了哈
    2013-02-02
  • Android升級支持庫版本遇到的兩個問題詳解

    Android升級支持庫版本遇到的兩個問題詳解

    安卓平臺其中一個很牛逼的地方在于它支持各種不同的設備。從你的平板電腦,到你的手機,電視等,安卓無處不在。這篇文章主要給大家介紹了關(guān)于Android升級支持庫版本遇到的兩個問題,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-10-10
  • Android9.0 SystemUI 網(wǎng)絡信號欄定制修改的流程解析

    Android9.0 SystemUI 網(wǎng)絡信號欄定制修改的流程解析

    這篇文章主要介紹了Android9.0 SystemUI 網(wǎng)絡信號欄定制修改的流程,本文通過圖文實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-11-11
  • Flutter實現(xiàn)漸變色加描邊字體效果

    Flutter實現(xiàn)漸變色加描邊字體效果

    這篇文章介紹了Flutter實現(xiàn)漸變色描邊字體效果的方法,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-11-11
  • Android檢測url地址是否可達的兩種方法

    Android檢測url地址是否可達的兩種方法

    今天小編就為大家分享一篇Android檢測url地址是否可達的兩種方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Android開發(fā)從相機或相冊獲取圖片裁剪

    Android開發(fā)從相機或相冊獲取圖片裁剪

    當我們需要上傳圖片時,想要裁剪成我們需要的尺寸大小,android手機都帶有這個功能,很容易,那么此功能是如何實現(xiàn)的呢?下面小編給大家介紹Android開發(fā)從相機或相冊獲取圖片裁剪,需要的朋友可以參考下
    2015-10-10
  • Android編程開發(fā)中的正則匹配操作示例

    Android編程開發(fā)中的正則匹配操作示例

    這篇文章主要介紹了Android編程開發(fā)中的正則匹配操作,結(jié)合具體實例形式分析了Android針對手機號、郵箱及IP的正則匹配操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2017-06-06
  • android九宮格鎖屏控件使用詳解

    android九宮格鎖屏控件使用詳解

    這篇文章主要為大家詳細介紹了android九宮格鎖屏控件使用,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06

最新評論