--------------------
|
**** **** **** 1234 |
--------------------
신속하게 UITextField 텍스트를 부분적으로 마스크하는 방법은 무엇입니까?
당신이 말할 수있는, 내가 부분적으로 카드 번호의 처음 12 자리에 마스크를 시도하고있는 사용자 유형은 UITextField
입니다. 4 자릿수로 숫자를 분리하는 방법을 알아내는 데 많은 시간이 필요했습니다. 이제는 보안 입력 스타일 마스크로 처음 12 자리를 가면됩니다.
도움을 주시면 감사하겠습니다. 고맙습니다.
편집 : 내가 지금까지 시도
추가 코드 :
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
guard let text = textField.text else {
return true
}
//@"●"
let lastText = (text as NSString).replacingCharacters(in: range, with: string) as String
if txtCardNumber.text?.characters.count >= 12 {
txtCardNumber.text = "●●●● ●●●● ●●●●" // + String()
return true
}
return true
}
목적 : 내가 시도한 게시했다. ● 사용 포인트를 지난 후에는 사용할 수 없으며 텍스트 길이를 결정한 후 12 번 필드가 12 개 이상 있습니다. 여기에 붙어 있습니다. 질문에 답하기 위해 입력 할 때 번호를 표시해야하지만 다음 번호가 유형 일 때는 ●로 바꾸어야합니다. 길이가 12가 될 때까지 동일한 행동을 계속 한 다음 16 자리까지 숫자를 보여줍니다.
전체 카드 번호가 하나의 문자열입니까? 아니면 4 자리 숫자로 구성된 4 개의 다른 문자열입니까? – Alex
전체 카드 번호는 하나의 문자열입니다. @Alex –
문자를 입력 할 때 문자를 표시하고 지연된 문자를 숨기거나 문자를 입력 할 때 별표 만 표시해야합니까? –