溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用Android實現九宮格手勢解鎖

發布時間:2021-04-17 09:39:54 來源:億速云 閱讀:154 作者:小新 欄目:移動開發

這篇文章主要介紹了如何使用Android實現九宮格手勢解鎖,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

具體內容如下

這里是使用的開源庫GestureLibray

里面有關于這個東西的介紹和接入方式,這里就不累贅了,我只是說下里面沒有的。

關于這個庫的使用:

protected void initViews() {
    //設置模式
    LockMode lockMode = (LockMode) getIntent().getSerializableExtra(Config.INTENT_SECONDACTIVITY_KEY);
    //是否顯示手勢的方向箭頭
    lv_lock.setShow(false);
    //允許輸入錯誤的次數
    lv_lock.setErrorNumber(Config.GESTURE_ERROR_COUNT);
    //設置手勢密碼的最小長度
    lv_lock.setPasswordMinLength(Config.GESTURE_LENGTH);
    //密碼設置后立即保存在本地
    lv_lock.setSavePin(true);
    //設置保存在本地的手勢密碼的鍵
    lv_lock.setSaveLockKey(Config.ZHCS_GESTURE_PWD_KEY);
    //設置密碼:LockMode.SETTING_PASSWORD
    //修改密碼:LockMode.EDIT_PASSWORD
    //驗證密碼:LockMode.VERIFY_PASSWORD
    //清除密碼:LockMode.CLEAR_PASSWORD
    switch (lockMode)
    {
      case CLEAR_PASSWORD:
        lable = "清除密碼";
        break;
      case EDIT_PASSWORD:
        lable = "修改密碼";
        setOldPassword();
        break;
      case SETTING_PASSWORD:
        lable = "設置密碼";
        break;
      case VERIFY_PASSWORD:
        lable = "驗證密碼";
        //設置舊密碼
        setOldPassword();
        break;
    }
    lv_lock.setMode(lockMode);
    //設置密碼輸入接口回調
    lv_lock.setOnCompleteListener(onCompleteListener);
  }
 
  /**
   * s設置舊密碼
   */
  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("密碼錯誤,還可以輸入" + errorTimes + "次");
    }
    @Override
    public void onPasswordIsShort(int passwordMinLength) {
      ToastUtil.showShortToast("密碼不能少于" + passwordMinLength + "個點");
    }
    @Override
    public void onAginInputPassword(LockMode mode, String password, int[] indexs) {
      ToastUtil.showShortToast("請再次輸入密碼");
    }
    @Override
    public void onInputNewPassword() {
      ToastUtil.showShortToast("請輸入新密碼");
    }
    @Override
    public void onEnteredPasswordsDiffer() {
      ToastUtil.showShortToast("兩次輸入的密碼不一致");
    }
    @Override
    public void onErrorNumberMany() {
      ToastUtil.showShortToast("密碼錯誤次數超過限制,不能再輸入");
    }
  };

值得注意的是,在驗證手勢密碼和修改手勢密碼的時候需要用到舊密碼,而這個舊密碼我斷點帶源碼里面去發現是空的,并沒主動去獲取,需要我們手動設置,就是用到ConfigUtil這個類。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“如何使用Android實現九宮格手勢解鎖”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女