iOS上開發的一個安全鍵盤

weixin_34138377發表於2018-03-14

前言

原文github連結:連結

這是一個高可擴充套件性,使用簡單的自定義安全鍵盤.利用工廠呼叫不同的類方法我們可以生產出相應的鍵盤,並且支援擴充套件,目前主要支援了數字和身份證鍵盤,每個鍵盤的UI調整也很簡單,並且支援鍵盤沒輸入一個鍵,輸出的字串都可以加密.

整合方法

直接將FYKeybord資料夾整體拖入工程即可,明明都有字首不會衝突.
需要匯入Masonry框架以及實現一個能根據16進位制自動轉RGB顏色的方法以及一個螢幕寬度巨集.
刪除按鈕的樣式圖片預設沒有新增,如果需要請自行去Resource資料夾拖取.

使用方法

1.不考慮游標可以移動,只需要按順序輸入,刪除則是從最後一位刪除可以如此使用:

FYNumberKeybordView *keybordView = [FYKeybordFactory fy_createNumberKeybordViewWithNumberPadType:randomNumberPadType];
[self.view addSubview:keybordView];
[keybordView mas_makeConstraints:^(MASConstraintMaker *make) {
    make.left.right.bottom.equalTo(@0);
    make.height.equalTo(@247);
}];

這裡需要注意的是該鍵盤需要手動實現FYNumberKeybordView的代理方法和frame,也沒什麼難的.

效果如下:

2401418-f584c78fdff6f5d4.png
效果

2.考慮游標的移動,鍵盤的彈起替換就要用新的介面了,只需要這一行程式碼,如果你需要定製frame請去子類中修改:

[FYKeybordFactory fy_createCursorNumberKeybordViewWithTargetTextfield:textField numberPadType:randomNumberPadType];

效果如下:

2401418-5dec9860dcdd2c7d.png
效果

3.身份證鍵盤和上面的使用方法類似:

[FYKeybordFactory fy_createIDKeybordViewWithTargetTextField:textField];

效果如下:

2401418-54928edad119a204.png
效果

4.本demo是沒有修改加密後的字串的,如果你需要修改可以在FYNumberPadModel類的secretNumberStr GET 方法中進行新增

相關文章