在文本框中输入小写字母大写,反之亦然
答
第一个答案是确定的,但有一些修改。测试带有变音标记的字母。使用复制和粘贴文本方法进行测试。
,说
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
}
不要忘记插入下面的内“覆盖FUNC viewDidLoad中()”。
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
}
不要忘记插入下面的内“覆盖FUNC viewDidLoad中()”。
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
}
不要忘记在“override func viewDidLoad()”中插入以下内容。
textFieldAlwaysUppercase.delegate = self
textFieldAlwaysLowercase.delegate = self
的可能的复制[总是打字(力)小写或大写 - IOS迅速](https://*.com/questions/31989028/typing-always-force-lowercase-or-uppercase-ios-swift ) –