加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Android监听连续点击次数代码实现

发布时间:2020-05-24 20:10:57 所属栏目:Java 来源:互联网
导读:Android监听连续点击次数代码实现

下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。

脚本之家小编现在分享给大家,也给大家做个参考。

一般实现

        long firstClickTime = 0;  
    @Override  
    public void onClick(View view) {  
        if(firstClickTime > 0){  
            long secondClickTime = SystemClock.uptimeMillis();//距离上次开机时间  
            long dtime = secondClickTime - firstClickTime;  
            if(dtime > 500){  
                Toast.makeText(getApplicationContext(),"实现双击事件监听",0).show();  
            } else{  
                firstClickTime = 0;  
            }  
            return ;   
        }  
        firstClickTime = SystemClock.uptimeMillis();  
    }  

Google实现算法

//数组存储点击次数  
            long[] mHits = new long[2];  
            @Override  
            public void onClick(View v) {  
                //实现双击方法  
                //src 拷贝的源数组  
                //srcPos 从源数组的那个位置开始拷贝.  
                //dst 目标数组  
                //dstPos 从目标数组的那个位子开始写数据  
                //length 拷贝的元素的个数  
                System.arraycopy(mHits,1,mHits,mHits.length - 1);  
                //实现左移,然后最后一个位置更新距离开机的时间,如果最后一个时间和最开始时间小于500,即双击  
                mHits[mHits.length - 1] = SystemClock.uptimeMillis();  
                if (mHits[0] >= (SystemClock.uptimeMillis() - 500)) {  
                    // 双击居中了。。。屏幕的一半和归属地的一半,更新窗口,保存lastX  
                    params.x = wm.getDefaultDisplay().getWidth()/2-view.getWidth()/2;  
                    wm.updateViewLayout(view,params);  
                    Editor editor = sp.edit();  
                    editor.putInt("lastx",params.x);  
                    editor.commit();  
                }  
            }  

以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读