真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

GestureDetector手勢(shì)滑動(dòng)識(shí)別-創(chuàng)新互聯(lián)

手勢(shì)識(shí)別是我們?nèi)粘J褂秒娮游锲分蟹浅3R?jiàn)的一個(gè)功能,這個(gè)功能大大提升了用戶體驗(yàn)的感受

成都創(chuàng)新互聯(lián)專注于杜爾伯特企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè),電子商務(wù)商城網(wǎng)站建設(shè)。杜爾伯特網(wǎng)站建設(shè)公司,為杜爾伯特等地區(qū)提供建站服務(wù)。全流程定制開(kāi)發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

    手勢(shì)識(shí)別主要有兩種方法,一種是GestureDetector,另一種是GestureOverlayView

現(xiàn)在來(lái)研究下GestureDetector方法

  1.手指觸屏的一瞬間,觸發(fā)MotionEvent事件

    2.被OnTouchListener監(jiān)聽(tīng),在onTouch()中獲得MotionEvent對(duì)象

    3.GestureDetector轉(zhuǎn)發(fā)MotionEvent對(duì)象至OnGestureListener

    4.OngestureListener獲得該對(duì)象,根據(jù)該對(duì)象封裝的信息做出合適的反饋

MotionEvent:

  1. 用于封裝手勢(shì)、觸摸筆、軌跡球等動(dòng)作事件

    內(nèi)部封裝用于記錄橫軸和縱軸坐標(biāo)的屬性X和Y

    手勢(shì)的滑動(dòng)相當(dāng)于屏幕上的XY軸的坐標(biāo)的變化

GestureDetector:識(shí)別各種手勢(shì)

當(dāng)手指:按下、移動(dòng)、抬起等可通過(guò)重載onTouch或者設(shè)置setOnTouchListener來(lái)監(jiān)聽(tīng)

原理:當(dāng)接收到用戶觸摸消息時(shí),將消息交給GestureDetector加工,通過(guò)設(shè)置監(jiān)聽(tīng)器獲得GestureDetector處理后的手勢(shì)

OnGestureListener:手勢(shì)交互的監(jiān)聽(tīng)接口,其提供多個(gè)抽象方法、根據(jù)GestureDetector的手勢(shì)識(shí)別結(jié)果調(diào)用相對(duì)應(yīng)的方法 ,監(jiān)聽(tīng)單擊事件

OnDoubleTapListener:監(jiān)聽(tīng)雙擊事件

OnGestureListener接口的方法太多,沒(méi)有辦法寫完,所以只需寫一個(gè)類,實(shí)現(xiàn)所需要的方法即可

單擊:onDown、抬起:onSingleTapUp、短按:onShowPress、長(zhǎng)按:onLongPress、滾動(dòng):onScroll、滑動(dòng):onFling

Android提供了一個(gè)類SimpleOnGestureListener:我們只需繼承這個(gè)類,然后重載感興趣的手勢(shì)就行

例子代碼如下:

package com.gdut.gesturedetector;

import android.app.Activity;

import android.app.ActionBar;

import android.app.Fragment;

import android.os.Bundle;

import android.view.GestureDetector;

import android.view.LayoutInflater;

import android.view.Menu;

import android.view.MenuItem;

import android.view.MotionEvent;

import android.view.View;

import android.view.GestureDetector.SimpleOnGestureListener;

import android.view.View.OnTouchListener;

import android.view.ViewGroup;

import android.widget.ImageView;

import android.widget.Toast;

import android.os.Build;

public class MainActivity extends Activity {

private ImageView img;

private GestureDetector myGestureDetector;

//OnGestureListener接口的方法太多,沒(méi)有辦法寫完,所以只需寫一個(gè)類,實(shí)現(xiàn)所需要的方法即可

//android提供了一個(gè)類simpleOnGestureListener

class myGestureListener extends SimpleOnGestureListener{

//實(shí)現(xiàn)滑動(dòng)的onFling方法

@Override

public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,

float velocityY) {

if(e1.getX() - e2.getX() > 50){

Toast.makeText(MainActivity.this, "從右往左滑動(dòng)!", Toast.LENGTH_SHORT).show();

}else if(e2.getX() - e1.getX() > 50){

Toast.makeText(MainActivity.this, "從左往右滑動(dòng)!", Toast.LENGTH_SHORT).show();

}

return super.onFling(e1, e2, velocityX, velocityY);

}

}

@SuppressWarnings("deprecation")

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

img = (ImageView) findViewById(R.id.img);

//實(shí)例化myGestureDetector,并監(jiān)聽(tīng)

myGestureDetector = new GestureDetector(new myGestureListener());

//向?qū)@張圖片進(jìn)行監(jiān)聽(tīng)

img.setOnTouchListener(new OnTouchListener() {

@Override

public boolean onTouch(View v, MotionEvent event) {

//獲得的event要通過(guò)GestureDetector轉(zhuǎn)發(fā)出去給OnGestureListener,OnGestureListener獲得該對(duì)象,根據(jù)該對(duì)象封裝的信息作出合適的反饋

myGestureDetector.onTouchEvent(event);

return true;

}

});

}

}

但是GestureDetector,有局限,就是只能進(jìn)行比較少而簡(jiǎn)單的手勢(shì)操作。

而比較復(fù)雜或者自定義的手勢(shì),就由GestureOverlayView實(shí)現(xiàn)

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


網(wǎng)站題目:GestureDetector手勢(shì)滑動(dòng)識(shí)別-創(chuàng)新互聯(lián)
URL地址:http://weahome.cn/article/jehii.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部