這篇文章主要介紹了如何使用Android實(shí)現(xiàn)九宮格手勢解鎖,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、微信平臺小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了月湖免費(fèi)建站歡迎大家使用!
具體內(nèi)容如下
這里是使用的開源庫GestureLibray
里面有關(guān)于這個(gè)東西的介紹和接入方式,這里就不累贅了,我只是說下里面沒有的。
關(guān)于這個(gè)庫的使用:
protected void initViews() { //設(shè)置模式 LockMode lockMode = (LockMode) getIntent().getSerializableExtra(Config.INTENT_SECONDACTIVITY_KEY); //是否顯示手勢的方向箭頭 lv_lock.setShow(false); //允許輸入錯(cuò)誤的次數(shù) lv_lock.setErrorNumber(Config.GESTURE_ERROR_COUNT); //設(shè)置手勢密碼的最小長度 lv_lock.setPasswordMinLength(Config.GESTURE_LENGTH); //密碼設(shè)置后立即保存在本地 lv_lock.setSavePin(true); //設(shè)置保存在本地的手勢密碼的鍵 lv_lock.setSaveLockKey(Config.ZHCS_GESTURE_PWD_KEY); //設(shè)置密碼:LockMode.SETTING_PASSWORD //修改密碼:LockMode.EDIT_PASSWORD //驗(yàn)證密碼:LockMode.VERIFY_PASSWORD //清除密碼:LockMode.CLEAR_PASSWORD switch (lockMode) { case CLEAR_PASSWORD: lable = "清除密碼"; break; case EDIT_PASSWORD: lable = "修改密碼"; setOldPassword(); break; case SETTING_PASSWORD: lable = "設(shè)置密碼"; break; case VERIFY_PASSWORD: lable = "驗(yàn)證密碼"; //設(shè)置舊密碼 setOldPassword(); break; } lv_lock.setMode(lockMode); //設(shè)置密碼輸入接口回調(diào) lv_lock.setOnCompleteListener(onCompleteListener); } /** * s設(shè)置舊密碼 */ private void setOldPassword() { String oldPwd = ConfigUtil.getInstance(this).getString(Config.ZHCS_GESTURE_PWD_KEY); lv_lock.setOldPassword(oldPwd); } CustomLockView.OnCompleteListener onCompleteListener = new CustomLockView.OnCompleteListener() { @Override public void onComplete(String password, int[] indexs) { ToastUtil.showShortToast(lable+"成功"); //finish(); } @Override public void onError(String errorTimes) { ToastUtil.showShortToast("密碼錯(cuò)誤,還可以輸入" + errorTimes + "次"); } @Override public void onPasswordIsShort(int passwordMinLength) { ToastUtil.showShortToast("密碼不能少于" + passwordMinLength + "個(gè)點(diǎn)"); } @Override public void onAginInputPassword(LockMode mode, String password, int[] indexs) { ToastUtil.showShortToast("請?jiān)俅屋斎朊艽a"); } @Override public void onInputNewPassword() { ToastUtil.showShortToast("請輸入新密碼"); } @Override public void onEnteredPasswordsDiffer() { ToastUtil.showShortToast("兩次輸入的密碼不一致"); } @Override public void onErrorNumberMany() { ToastUtil.showShortToast("密碼錯(cuò)誤次數(shù)超過限制,不能再輸入"); } };
值得注意的是,在驗(yàn)證手勢密碼和修改手勢密碼的時(shí)候需要用到舊密碼,而這個(gè)舊密碼我斷點(diǎn)帶源碼里面去發(fā)現(xiàn)是空的,并沒主動(dòng)去獲取,需要我們手動(dòng)設(shè)置,就是用到ConfigUtil這個(gè)類。
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“如何使用Android實(shí)現(xiàn)九宮格手勢解鎖”這篇文章對大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!