UITextField自动大写类型 - iPhone App

时间:2011-08-04 14:15:19

标签: ios uitextfield

有没有办法为UITextField设置autocapitalizationType,以便默认情况下每个单词的首字母大写?

  

这是我想要的一个例子

7 个答案:

答案 0 :(得分:223)

使用 textField.autocapitalizationType = UITextAutocapitalizationTypeWords;

有关详细信息,请参阅:UITextInputTraits Protocol Reference

答案 1 :(得分:36)

我们要做的是设置文本字段autocapitalizationType

目标C:

self.textfield.autocapitalizationType = UITextAutocapitalizationTypeWords

夫特:

self.textfield.autocapitalizationType = .words

这里有几个选项:

enter image description here

  • allCharacters与双击shift键相同,基本上是封锁。
  • none非常明显,键盘永远不会尝试将字母大写。
  • sentences会尝试在结束标记标点符号后大写下一个单词。
  • words会尝试将每个新单词(在空格之后)大写,这似乎正是您正在寻找的内容。

当您选择了相应的文本字段时,也可以从界面构建器的“属性”检查器中设置此属性:

enter image description here

"资本"是该组中的第一个选项,只是选择了文本字段的最小字体大小。

答案 2 :(得分:8)

capitalization属性设置为“Words”将建议用户输入大写单词。用户可以通过在键盘上移位来覆盖这一点。最好的办法是将代码中的单词大写:

NSString *text = [myTextField.text capitalizedString];

答案 3 :(得分:7)

是。在Interface Builder上,在文本字段属性检查器上,您可以将Capitalization属性设置为Words。

答案 4 :(得分:4)

Obj-C有一个答案,我在这里为Swift;

textField.autocapitalizationType = UITextAutocapitalizationType.words

或更短的方式

textField.autocapitalizationType = .words

答案 5 :(得分:1)

您甚至可以从Storyboard或.xib文件中执行此操作。只需选择文本字段,然后在右侧的属性检查器中有一个“大写”部分,您可以在其中选择适合您的任何内容。在你的情况下,它的大写字母是“单词”。

答案 6 :(得分:0)

在Xamarin.ios / Monotouch中,这对我有用:

textField.AutocapitalizationType = UITextAutocapitalizationType.Words;