我有一个 UITextField 是第一响应者。我想在进入视图时显示键盘,但我想这样做用户将无法编辑它,并且光标也将一直隐藏。
当您单击键盘字母时,它将写入 UITextField,但用户将无法在其中编辑任何内容,甚至无法复制。
谢谢!
我有一个 UITextField 是第一响应者。我想在进入视图时显示键盘,但我想这样做用户将无法编辑它,并且光标也将一直隐藏。
当您单击键盘字母时,它将写入 UITextField,但用户将无法在其中编辑任何内容,甚至无法复制。
谢谢!
好的,根据我的评论,我的解决方案是让代理UITextField
的hidden
属性设置为YES
. 我所做的是将隐藏的文本字段添加到视图中,然后调用becomeFirstResponder
它。用户不知道此文本字段存在。在来自文本字段的委托回调中,我获取用户输入的文本并将其添加到 a UITextView
(尽管您可以将文本添加到您想要的任何内容,就像UITextField
您的问题中的一样)。我关闭userInteractionEnabled
了可见文本视图。这会产生您想要的效果。
我创建了一个上传到 Github 的示例项目。(如果您不熟悉它,只需单击 zip 按钮下载它,解压缩并打开 .xcodeproj 文件)。https://github.com/MaxGabriel/HiddenTextField
我UISearchBar
在我的viewController
. 我这样做了:
- (void)viewWillAppear:(BOOL)animated
{
[self.searchBar becomeFirstResponder];
}
这对于 a 应该是一样的UITextField
。
至于禁用编辑,请使用:
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
return NO;
}
您应该将 viewController 设置为UITextField
.
编辑答案:试试这个:
1. [txtField becomeFirstResponder];
2. txtField.enabled = NO;
3. when some press on keyboard, then txtField.enabled = YES;