我有一个外语词典应用程序,允许用户输入音译(转换成英文)的单词。大多数条目都是小写字母,但有几个条目是大写字母。从 IOS 8 开始,搜索栏不再识别 UITextAutocapitalizationTypeNone
。这给最终用户带来了相当大的沮丧。有没有实用的策略来关闭首字母大写?当前在 UISearchBar
的故事板设置中已经关闭了它。
这是一个现有的应用程序,最初是为 iOS 6 编写的。当前的 Apple 文档指出 AutocapitalizationType 在 iOS 2 到 iOS 7.1 中可用。用户在升级到 iOS 8 后报告了这一变化。
autocapitalizationType
其实并未被废弃。文档有误导之嫌。在 iOS 8.0 之前,UISearchBar
拥有autocapitalizationType
属性。而在 iOS 8.0 及以后,该属性已被移除,但新增了UITextInputAttributes
协议,其中包含了autocapitalizationType
属性。因此实际上什么也没有改变。该属性依旧存在,只是声明方式不同罢了。如果从 storyboard 中无法设置该属性,则可以尝试直接通过代码进行设置。 - rmaddy