Android Studio 之 简单的按键双击事件实现

2025-09-30 01:26:00

1、打开 Android Studio,新建一个工程,新建一个模块,具体如下图

Android Studio 之 简单的按键双击事件实现

Android Studio 之 简单的按键双击事件实现

Android Studio 之 简单的按键双击事件实现

2、在模块中添加一个 Java Class,可以命名为 DoubleClickToolTest,具体如下图

Android Studio 之 简单的按键双击事件实现

Android Studio 之 简单的按键双击事件实现

3、DoubleClickToolTest 脚本,首先定义一个 双击的间隔时间,并记录当前计时时间,,然后新建一个函数,监听双击音量 UP 的事件,并实现双击的时候,Toast 双击成功的测试函数,具体如下图

Android Studio 之 简单的按键双击事件实现

Android Studio 之 简单的按键双击事件实现

4、DoubleClickToolTest 脚本的具体内容如下:

package com.example.doubleclickdemo;

 

import android.content.Context;

 

import android.view.KeyEvent;

 

import android.widget.Toast;

 

public class DoubleClickToolTest {

 

   private long intervalTime;  // 双击间隔时间

 

   private long currentTime;   // 当前计时时间

 

   private Context context;    // 上下文

 

   // 构造函数 初始化数据

 

   public DoubleClickToolTest(long intervalTime, Context context){

 

       this.intervalTime = intervalTime;

 

       currentTime = System.currentTimeMillis();

 

       this.context = context;

 

   }

 

   // 简单测试双击音量 UP 的事件

 

   public void onKeyDown(int keyCode, KeyEvent event){

 

       //监控音量 UP 两次点击在间隔时间里,弹出双击成功信息

 

       if(keyCode == KeyEvent.KEYCODE_VOLUME_UP){

 

           if((System.currentTimeMillis() - currentTime) <= intervalTime ){

 

               Toast.makeText(context,"双击成功", Toast.LENGTH_SHORT).show();

 

           }else {

 

               currentTime = System.currentTimeMillis();

 

           }

 

       }

 

   }

 

}

5、回到 MainActivity,添加 DoubleClickToolTest,并实例化该类,设定间隔时间为 500 毫秒,然后在 onKeyDown 下监听双击音量Up 的事件,具体如下图

Android Studio 之 简单的按键双击事件实现

6、MainActivity 脚本的具体内容如下:

package com.example.doubleclickdemo;

 

import android.support.v7.app.AppCompatActivity;

 

import android.os.Bundle;

 

import android.view.KeyEvent;

 

public class MainActivity extends AppCompatActivity {

 

   // 双击按钮事件类

 

   private DoubleClickToolTest doubleClickToolTest;

 

   @Override

 

   protected void onCreate(Bundle savedInstanceState) {

 

       super.onCreate(savedInstanceState);

 

       setContentView(R.layout.activity_main);

 

       // 实例化双击按钮事件类,并设置时间为间隔为 500 毫秒,上下文

 

       doubleClickToolTest = new DoubleClickToolTest(500,this);

 

   }

 

   @Override

 

   public boolean onKeyDown(int keyCode, KeyEvent event) {

 

       // 把实例化的双击监听事件添加到 onKeyDown 里

 

       doubleClickToolTest.onKeyDown(keyCode,event);

 

       return super.onKeyDown(keyCode, event);

 

   }

 

}

7、把工程编译打包到设备上,具体如下图

Android Studio 之 简单的按键双击事件实现

8、在 500 毫秒内,双击 音量 Up 键实现双击效果,之后大家可以根据自己的需要添加其他的,具体如下图

Android Studio 之 简单的按键双击事件实现

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢