【问题标题】:Preventing 'Select' and 'Select All' in UITextView?在 UITextView 中防止“选择”和“全选”?
【发布时间】:2012-01-27 11:47:57
【问题描述】:

我在其他地方发现以下代码会阻止在 UITextView 中复制和粘贴。但是我不能在不完全禁用所有 UITextField 的情况下使类似的代码工作以防止在 UITextView 中选择和粘贴。

当我在编辑时触摸文本字段时,会显示 Select 和 Select All 方法。换句话说,如果我停止输入数字,只需触摸并按住正在编辑的字段,就会弹出 Select 和 Select All 方法。我不希望这种情况发生。有什么建议?

@implementation UITextView (DisableCopyPaste)
- (BOOL)canBecomeFirstResponder
{
    return NO;
}
@end

【问题讨论】:

    标签: cocoa-touch uitextview


    【解决方案1】:

    有几种方法可以解决这个问题。

    1) 您可以设置UITextView's delegate。委托包含一个方法 (- (BOOL)textViewShouldBeginEditing:(UITextView *)textView),您可以实现该方法以避免选择。

    2) 您也可以将 UITextView 的属性 userInteractionEnabled 设置为 NO。然后它不会再滚动了。

    【讨论】:

    • Larcus,如果我将 UITextView 的属性 userInteractionEnabled 设置为 NO,我将根本无法编辑该字段。滚动或不滚动不是问题,部分原因是文本字段只有一行。
    • 另外,当用户触摸文本字段时,弹出数字小键盘,文本字段的背景变为黄色,文本字段中的文本为空白。当用户通过键盘提供数字输入然后触摸文本字段内部时,就会出现我试图解决的问题。这就是 Select 和 Select All 方法弹出的时候。我不想显示这些方法。
    猜你喜欢
    • 2011-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-28
    • 2017-07-11
    • 2021-02-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多