zoukankan      html  css  js  c++  java
  • Android——自定义多击事件

        一:使用场景

        Android本身内置了点击、双击事件,但是某些时候,我们可能需要多击事件。

        例如:某个秘密入口,为了避免用户误操作点击、双击到了触发开关而进入到不该被用户看到的页面,我们可以为入口控件设置三击事件,点击三次才能进入。

        二:核心代码

    //1:点击时刻采样数组:记录每次点击的时刻。数组长与事件的点击次数一致,三击事件就设为3
    long[] mHits = new long[3]; 
    
    //2:为入口控件设置三击事件
    控件.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    System.arraycopy(mHits, 1, mHits, 0, mHits.length-1); //数组复制:每点击一下,数组数据前移一位
                    mHits[mHits.length-1] = SystemClock.uptimeMillis();
    
                    //多击事件的判断:多次点击后,数组的第一位保存着多击事件的第一下点击的时间。如果最新点击时间与第一下点击时间间隔小于0.5秒,则判断为多击时间。
                    if (mHits[0] >= (SystemClock.uptimeMillis()-500)) { //注意:这里的时间间隔,要参照多击事件的点击次数来定,3击大概0.5秒之内,5击大概要0.8~1秒。
    //todo:多击事件的响应操作 mHits = null; mHits = new long[3]; //新开一个数组用于采样下次多击事件 } } });
  • 相关阅读:
    前端HTMLCSS
    jedis 连接池的使用
    win8+安装net3.5步骤与常见错误.
    并行线程的生命周期
    OneNote截图快捷键冲突解决方案
    C#中lsitView如何搜索某个子项
    redis哨兵与集群
    git笔记
    微软官方Hololens开发课程介绍
    Markdown使用入门简介
  • 原文地址:https://www.cnblogs.com/ygj0930/p/7975508.html
Copyright © 2011-2022 走看看