我正在尝试为iOS8更新一个应用程序,它有一个聊天界面,但新的Quicktype键盘隐藏了文本视图,所以我想通过编程或在界面生成器中将其关闭。
是否有可能以某种方式或者只有用户可以在设备设置中将其关闭?
我知道有一个问题/答案可以用UITextfield
解决这个问题,但我需要用UITextView
来解决这个问题。
发布于 2014-10-22 13:43:26
您可以禁用UITextView的键盘建议/ autocomplete / QuickType,这可能会阻止像4S这样的小屏幕上的文本,如本例所示
下面这行代码:
myTextView.autocorrectionType = UITextAutocorrectionTypeNo;
此外,如果您只想在特定屏幕上执行此操作,例如瞄准4S
if([[UIDevice currentDevice]userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
CGFloat screenHeight = [UIScreen mainScreen].bounds.size.height;
if (screenHeight == 568) {
// iphone 5 screen
}
else if (screenHeight < 568) {
// smaller than iphone 5 screen thus 4s
}
}
发布于 2014-11-28 00:48:13
为了完整起见,我想补充说,您也可以在Interface Builder
中做到这一点。
要在Attributes Inspector
中禁用UITextField
或UITextView
上的键盘建议,请将Correction
设置为No
。
发布于 2014-09-24 11:38:45
我已经使用以下方法创建了一个UITextView类别类:
- (void)disableQuickTypeBar:(BOOL)disable
{
self.autocorrectionType = disable ? UITextAutocorrectionTypeNo : UITextAutocorrectionTypeDefault;
if (self.isFirstResponder) {
[self resignFirstResponder];
[self becomeFirstResponder];
}
}
我希望有一种更干净的方法。此外,它还假设自动更正模式为Default
,这可能并不总是适用于每个文本视图。
https://stackoverflow.com/questions/25951274
复制相似问题