有没有办法为UITextField
设置autocapitalizationType,以便默认情况下每个单词的首字母大写?
这是我想要的一个例子
答案 0 :(得分:223)
使用
textField.autocapitalizationType = UITextAutocapitalizationTypeWords;
有关详细信息,请参阅:UITextInputTraits Protocol Reference
答案 1 :(得分:36)
我们要做的是设置文本字段autocapitalizationType
。
self.textfield.autocapitalizationType = UITextAutocapitalizationTypeWords
self.textfield.autocapitalizationType = .words
这里有几个选项:
allCharacters
与双击shift键相同,基本上是封锁。none
非常明显,键盘永远不会尝试将字母大写。sentences
会尝试在结束标记标点符号后大写下一个单词。words
会尝试将每个新单词(在空格之后)大写,这似乎正是您正在寻找的内容。当您选择了相应的文本字段时,也可以从界面构建器的“属性”检查器中设置此属性:
"资本"是该组中的第一个选项,只是选择了文本字段的最小字体大小。
答案 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;