在我的 IPad 应用程序中,我仅将 TextView 用于文本显示。因为我需要显示更大的文本,这就是我使用 UITextview 的原因,因为它的滚动属性而不是使用 UILabel。在我的应用程序中,我不需要在 UITextview 中编辑文本,但对我来说,问题是当我单击 Textview 滚动键盘时,它会隐藏我的文本视图,所以我希望我的键盘永远不会出现在点击事件上。我进行搜索但找不到任何合适的解决方案。任何帮助都将得到解决。谢谢
问问题
4540 次
2 回答
5
新答案(以前的答案不能正常工作)
好的,因为这不起作用,因为它也禁用滚动,你应该尝试:
实现 UITextFieldDelegate 协议在您的视图控制器中添加文本
@interface YourViewController () <UITextViewDelegate>
在 viewDidLoad 中将自己设置为委托:
yourUITextView.delegate = self;
实现下面的委托方法:
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView
{
return NO;
}
当 textview 即将编辑文本时,会自动调用该方法。它返回 no,因此不会开始编辑。
撤消先前答案中的更改非常重要:不要将可编辑字段设置为 NO
我试过了,它工作正常。希望能帮助到你!
旧答案
当您声明变量时,或在您的 viewdidload 方法中,将可编辑属性设置为 NO:
yourUITextView.editable = NO;
或者
[yourUITextView setEditable:NO]
这应该可以防止键盘出现。
于 2012-07-19T14:29:45.597 回答
1
转到 .XIB 文件,您可以取消选中可编辑的行为或以编程方式
textView.editable = NO;
于 2012-07-19T14:28:24.223 回答