始终(强制)输入小写或大写 - ios swift

Typing always (force) lowercase or uppercase - ios swift

如何强制在 swift 语言的某些文本字段中始终输入小写或大写?

您应该在 if blockreturn false 因为您已经更新了 文本字段

func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
  if textField.isEqual(textFieldBodrum) {
     textFieldBodrum.text = (textField.text as NSString).stringByReplacingCharactersInRange(range, withString: string.lowercaseString)
     return false
  } else if textField.isEqual(textFieldYalikavak) {
                textFieldYalikavak.text = (textField.text as NSString).stringByReplacingCharactersInRange(range, withString: string.uppercaseString)
    return false
  }
   return true
}

如果您不想影响其他 文本字段,您应该 return true 结束 shouldChangeCharactersInRange function

https://gist.github.com/fatihyildizhan/ac5f476aebd306b0580a1fa069f153a3

最简单的解决方案是将文本字段的 autocapitalizationType 属性 设置为 .None 默认为小写输入或 .AllCharacters 默认为大写输入。不过,用户仍然可以使用 shift 键更改大小写。