3

我有一个 UITextField 是第一响应者。我想在进入视图时显示键盘,但我想这样做用户将无法编辑它,并且光标也将一直隐藏。

当您单击键盘字母时,它将写入 UITextField,但用户将无法在其中编辑任何内容,甚至无法复制。

谢谢!

4

3 回答 3

6

好的,根据我的评论,我的解决方案是让代理UITextFieldhidden属性设置为YES. 我所做的是将隐藏的文本字段添加到视图中,然后调用becomeFirstResponder它。用户不知道此文本字段存在。在来自文本字段的委托回调中,我获取用户输入的文本并将其添加到 a UITextView(尽管您可以将文本添加到您想要的任何内容,就像UITextField您的问题中的一样)。我关闭userInteractionEnabled了可见文本视图。这会产生您想要的效果。

我创建了一个上传到 Github 的示例项目。(如果您不熟悉它,只需单击 zip 按钮下载它,解压缩并打开 .xcodeproj 文件)。https://github.com/MaxGabriel/HiddenTextField

于 2012-12-01T21:55:04.347 回答
0

UISearchBar在我的viewController. 我这样做了:

- (void)viewWillAppear:(BOOL)animated
{
    [self.searchBar becomeFirstResponder];
}

这对于 a 应该是一样的UITextField

至于禁用编辑,请使用:

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
    return NO;
}

您应该将 viewController 设置为UITextField.

于 2012-12-01T17:26:53.943 回答
0

编辑答案:试试这个:

1. [txtField becomeFirstResponder]; 
2. txtField.enabled = NO; 
3. when some press on keyboard, then txtField.enabled = YES;

看看这个:http ://www.youtube.com/watch?v=cKV5csbueHA

于 2012-12-01T17:10:43.343 回答