android程序监听器,android – OnTap监听器实现

可以使用onClickListener()设置任何视图,该视图类是视图类的一部分.最简单的方法是在onCreate()方法中设置对视图的引用.以下是图像视图的示例:

ImageView iv = (ImageView) findViewByID(R.id.example);

iv.setOnClickListener(new View.OnClickListener() {

public void onClick(View v) {

// Do what you need to do on click

....

}

});

更新:DOUBLE TAP

以下是在图像视图上实现基本双击检测的示例活动:

import android.app.Activity;

import android.os.Bundle;

import android.os.SystemClock;

import android.view.MotionEvent;

import android.view.View;

import android.widget.ImageView;

import android.widget.Toast;

public class DoubleTapActivity extends Activity {

//Set the double tap delay in milliseconds

protected static final long DOUBLE_CLICK_MAX_DELAY = 1000L;

private ImageView iView;

private long thisTime = 0;

private long prevTime = 0;

private boolean firstTap = true;

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

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

iView.setOnTouchListener( new View.OnTouchListener() {

@Override

public boolean onTouch(View v, MotionEvent event) {

// TODO Auto-generated method stub

if(firstTap){

thisTime = SystemClock.uptimeMillis();

firstTap = false;

}

else

{

prevTime = thisTime;

thisTime = SystemClock.uptimeMillis();

//Check that thisTime is greater than prevTime

//just incase system clock reset to zero

if(thisTime > prevTime){

//Check if times are within our max delay

if((thisTime - prevTime) <= DOUBLE_CLICK_MAX_DELAY){

//We have detected a double tap!

Toast.makeText(DoubleTapActivity.this, "DOUBLE TAP DETECTED!!!", Toast.LENGTH_LONG).show();

//PUT YOUR LOGIC HERE!!!!

}

else

{

//Otherwise Reset firstTap

firstTap = true;

}

}

else

{

firstTap = true;

}

}

return false;

}

});

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值