2011-04-06 131 views
36

如何使它在您点击UITextfield之后开始在键盘上键入时,第一个字母不是自动生成的大写字母?UiTextField小写字母的第一个字母

+0

前两个答案[这个问题](https://stackoverflow.com/questions/2474824/iphone-issue-disabling-auto-cap-autocorrect-on-a- uitextfield)似乎回答了这个问题:它不仅仅是一个自动大写,而且还是一个自动更正问题。关闭自动更正功能,并且文本字段的第一个字母不会被自动填充。 – ConfusionTowers 2017-10-25 21:08:50

回答

121
textField.autocapitalizationType = UITextAutocapitalizationTypeNone; 
+0

这似乎并没有做它的第一封信;就好像它正在开始一个句子。 – 2017-07-20 19:14:16

+1

@DavidDunham这是对你自己而言的自动更正。关闭此功能,并且文本字段中的第一个字母将保持小写。前两个答案[这里](https://stackoverflow.com/questions/2474824/iphone-issue-disabling-auto-cap-autocorrect-on-a-uitextfield)显示你需要什么。 – ConfusionTowers 2017-10-25 21:10:25

5

set setAutocapitalizationType:UITextAutocapitalizationTypeNone用于UITextField。

6

您可以在XIB(界面生成器)中的文本字段属性的文本输入特征中为TextField设置大小写。 希望这将帮助ü

2

试试这个代码:

textfieldname.autocapitalizationType = UITextAutocapitalizationTypeNone; 
4

在斯威夫特:

textField.autocapitalizationType = UITextAutocapitalizationType.None 
+0

更好,但'textField.autocapitalizationType = .None' – 2016-12-20 15:18:43

0

这个代码将小写所有文本字段当您在目标文本中输入任何东西时输入字段

func textField(_ textFieldToChange: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool { 
     //just change this charectar username it's a text field 
     if textFieldToChange == username { 
      let characterSetNotAllowed = CharacterSet.whitespaces 
      if let _ = string.rangeOfCharacter(from:NSCharacterSet.uppercaseLetters) { 
       return false 
      } 
      if let _ = string.rangeOfCharacter(from: characterSetNotAllowed, options: .caseInsensitive) { 
       return false 
      } else { 
       return true 
      } 
     } 
     return true 
    } 
0

夫特

yourTextField.autocapitalizationType = .none 
+0

这并没有提供问题的答案。要批评或要求作者澄清,请在其帖子下方留言。 - [来自评论](/ review/low-quality-posts/18804471) – 2018-02-13 09:23:44

相关问题