我有一个UITextView
需要自动调整字数。但是,当我调用这些方法中的任何一个时,视图都不会响应。
[self.fullNameTextView setAutocapitalizationType:UITextAutocapitalizationTypeWords];
self.fullNameTextView.autocapitalizationType = UITextAutocapitalizationTypeWords;
这是iOS 8.1中的错误吗?
答案 0 :(得分:17)
我有同样的问题,并且可以通过将我的键盘类型设置回DEFAULT来解决它:
答案 1 :(得分:6)
请检查您的设备设置 - >键盘 - > Auto-capitalisation已打开。 如果不是那么你就无法使用自动资本化财产。 所以打开它。使用键盘获得所有资本。 我希望它为你工作。
答案 2 :(得分:1)
两种方法都有效,设置属性有效。你在使用模拟器进行测试吗?
我发现只有在Hardware > Keyboard > Connect Hardware Keyboard
(取消选中)中禁用硬件键盘并使用屏幕软件键盘时,自动资本化才有效。我使用UITextField和UITextView对iOS 8.1进行了测试。
修改强>
这些属性仅确定手动输入时的行为。如果需要将以编程方式设置的文本大写为文本视图,请使用以下方法:
NSString *myString = @"this is my uncapitalised string";
self.fullNameTextView.text = [myString capitalizedString]
答案 3 :(得分:1)
self.fullNameTextView.autocapitalizationType = UITextAutocapitalizationTypeWords;
注意:如果从设置>常规>键盘> iOS / iDevice上的自动大写关闭其模拟器或自动大写,它将无效。如果禁用文本视图的自动更正,则此解决方案不起作用。