2019独角兽企业重金招聘Python工程师标准>>>
//定义长整型数组,初始化的值是{0,0};
private long[] mHits = new long[2];
private void doubleClick_2() {/*System.arraycopy(源数组&#xff0c;源数组起始位&#xff0c; 目的数组&#xff0c; 目的数组起始位&#xff0c; 长度 ){1,2,3,4} 执行下面语句后{2,3,4,4}*/System.arraycopy(mHits, 1, mHits, 0, mHits.length - 1);// 把数组最后一位赋值&#xff0c;新的时间值mHits[mHits.length - 1] &#61; SystemClock.uptimeMillis();//这几次点击相差的时间if (mHits[mHits.length - 1] - mHits[0] <500) {/**双击的业务逻辑*/}
}
自定义一个空数组&#xff0c;每次把数组整体向前移动一位&#xff0c;然后给数组最后一位赋值一个时间数&#xff0c;当 SystemClock.uptimeMillis() 与数组第一位之间的时间差小于 1 秒时&#xff0c;生效。mHints &#61; new long[5];public void onDisplaySettingButton(View view) {System.arraycopy(mHints, 1, mHints, 0, mHints.length - 1);// 把从第二位至最后一位之间的数字复制到第一位至倒数第一位mHints[mHints.length - 1] &#61; SystemClock.uptimeMillis();// 从开机到现在的时间毫秒数if (SystemClock.uptimeMillis() - mHints[0] <&#61; 1000) {// 连续点击之间间隔小于一秒&#xff0c;有效lineimg.setVisibility(View.VISIBLE);layoutLoginSetting.setVisibility(View.VISIBLE);}
}
public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length)
src: 源数组&#xff1b; srcPos: 源数组要复制的起始位置&#xff1b;
dest: 目的数组&#xff1b; destPos: 目的数组放置的起始位置&#xff1b; length: 复制的长度。
注意&#xff1a;src and dest 都必须是同类型或者可以进行转换类型的数组&#xff0e;
int[] fun1 &#61; {0,1,2,3,4,5,6};int[] fun2 &#61; {9,8,7};System.arraycopy(fun2,0, fun1,0,3);
//结果&#xff1a; {9, 8, 7, 3, 4, 5, 6}