-4
Xcode 8 및 Swift 3을 사용하고 있습니다. iOS 용 앱을 만들고 있습니다. 입력 된 소문자를 텍스트 필드에서 대문자로 자동 변환하는 방법은 무엇입니까?텍스트 필드에 소문자를 대문자로 입력하거나 그 반대로 입력하십시오.
Xcode 8 및 Swift 3을 사용하고 있습니다. iOS 용 앱을 만들고 있습니다. 입력 된 소문자를 텍스트 필드에서 대문자로 자동 변환하는 방법은 무엇입니까?텍스트 필드에 소문자를 대문자로 입력하거나 그 반대로 입력하십시오.
첫 번째 대답은 괜찮지 만 일부 수정되었습니다. 분음 기호가있는 문자로 테스트되었습니다. 텍스트 복사 및 붙여 넣기 방법으로 테스트되었습니다.
class ViewController: UIViewController {
을 말한다
다음은 다음과 같이해야합니다.
class ViewController: UIViewController, UITextFieldDelegate {
이 단지 하나 개의 텍스트 필드에 적용됩니다. ... Shift 키가 잠기거나 아래로 눌러도 대문자로 입력 강제로
@IBOutlet weak var textField: UITextField!
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
if string.lowercased() == string {
textField.text = (textField.text! as NSString).replacingCharacters(in: range, with: string.uppercased())
} else {
textField.text = (textField.text! as NSString).replacingCharacters(in: range, with: string.uppercased())
}
return false
}
")은 (viewDidLoad에 FUNC 무시"다음 내부를 삽입하는 것을 잊지 마십시오.
textField.delegate = self
이 단 하나 개의 텍스트 필드에 적용됩니다. ... Shift 키가 잠기거나 눌려도 소문자로 입력 강제로
@IBOutlet weak var textField: UITextField!
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
if string.lowercased() == string {
textField.text = (textField.text! as NSString).replacingCharacters(in: range, with: string.lowercased())
} else {
textField.text = (textField.text! as NSString).replacingCharacters(in: range, with: string.lowercased())
}
return false
}
")은 (viewDidLoad에 FUNC 무시"다음 내부를 삽입하는 것을 잊지 마십시오. 다음
textField.delegate = self
@IBOutlet weak var textFieldAlwaysUppercase: UITextField!
@IBOutlet weak var textFieldAlwaysLowercase: UITextField!
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
if textField.isEqual(textFieldAlwaysUppercase) {
textFieldAlwaysUppercase.text = (textField.text! as NSString).replacingCharacters(in: range, with: string.uppercased())
return false
} else if textField.isEqual(textFieldAlwaysLowercase) {
textFieldAlwaysLowercase.text = (textField.text! as NSString).replacingCharacters(in: range, with: string.lowercased())
return false
}
return true
}
")은 (viewDidLoad에 FUNC 무시"다음 내부를 삽입하는 것을 잊지 마십시오. 의
textFieldAlwaysUppercase.delegate = self
textFieldAlwaysLowercase.delegate = self
가능한 복제 [항상 타이핑 (힘) 소문자 나 대문자 - IOS 신속] (https://stackoverflow.com/questions/31989028/typing-always-force-lowercase-or-uppercase-ios-swift) –