今天看新奥工程的代码,发现他们登录界面,点击5次版本号,才会出现登录设置界面,类似于开发者选项,感觉还蛮有意思,记录一下。
原理如下:
自定义一个空数组,每次把数组整体向前移动一位,然后给数组最后一位赋值一个时间数,当
SystemClock.uptimeMillis() 与数组第一位之间的时间差小于1秒时,生效。
mHints = new long[5];
public void onDisplaySettingButton(View view) {
System.arraycopy(mHints, 1, mHints, 0, mHints.length - 1);//把从第二位至最后一位之间的数字复制到第一位至倒数第一位
mHints[mHints.length - 1] = SystemClock.uptimeMillis();//从开机到现在的时间毫秒数
if (SystemClock.uptimeMillis() - mHints[0] <= 1000) {//连续点击之间间隔小于一秒,有效
lineimg.setVisibility(View.VISIBLE);
layoutLoginSetting.setVisibility(View.VISIBLE);
}
}
System.arraycopy(mHints, 1, mHints, 0, mHints.length - 1);//把从第二位至最后一位之间的数字复制到第一位至倒数第一位
mHints[mHints.length - 1] = SystemClock.uptimeMillis();//从开机到现在的时间毫秒数
if (SystemClock.uptimeMillis() - mHints[0] <= 1000) {//连续点击之间间隔小于一秒,有效
lineimg.setVisibility(View.VISIBLE);
layoutLoginSetting.setVisibility(View.VISIBLE);
}
}