2011-04-06 133 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

相關問題