2014-02-20 2 views
0

Отключить UITextview выбор отключить или отключить меню копирования/вставки, но я не хочу отключать свои ссылки в UITextview Я пытаюсь, но оба отключить любое решение?Как disbale UITextview выбор текста

+0

Показать код, который вы использовали –

+0

[textview setSelectable: No]; –

+0

этот код отключить мои веб-ссылки в uitextview не нажать способный –

ответ

0

в - textViewDidChangeSelection: метод делегата,

textView.selectedRange = NSMakeRange(0,0); 
+0

i use this textView.selectedRange = NSRangeMake (0,0); , но скопируйте/вставьте меню и выбор работы –

2

, если вы просто хотите, чтобы отключить копировать/вставить. Вы должны использовать Подкласс для UITextView

затем просто сделать это, чтобы отключить все пункты меню:

- (BOOL)canBecomeFirstResponder { 
    return NO; 
} 

, если вы хотите отключить только копировать и вставлять, вы можете сделать:

- (BOOL)canPerformAction:(SEL)action withSender:(id)sender 
{ 
    if (action == @selector(paste:) || action == @selector(copy:)) 
     return NO; 
    return [super canPerformAction:action withSender:sender]; 
} 
1

Внесите следующие требования согласно вашему требованию. он будет работать точно:

- (BOOL)canPerformAction:(SEL)action withSender:(id)sender 
{ 
    if (action == @selector(selectAll:)) 
    return NO; 

    if (action == @selector(select:)) 
    return NO; 

    if (action == @selector(cut:)) 
    return NO; 

    if (action == @selector(copy:)) 
     return NO; 

    if (action == @selector(paste:)) 
    return NO; 

return [super canPerformAction:action withSender:sender]; 
} 
1

Вы можете более ездить UITextField для - (BOOL)canPerformAction:(SEL)action withSender:(id)sender. См. Ниже код -

@interface MYLoginTextField : UITextField 

@end 

@implementation MYLoginTextField 

- (BOOL)canPerformAction:(SEL)action withSender:(id)sender 
{ 
    if (action == @selector(paste:) || action == @selector(copy:) || action == @selector(cut:) || action == @selector(select:) || action == @selector(selectAll:) || action == @selector(select:)) 
     return NO; 

    return [super canPerformAction:action withSender:sender]; 
} 

@end 
+0

этот код не работает –

+0

Как именно вы это попробовали? Я обновил полный код, взятый из моего рабочего проекта. – nanjunda

+0

Я использую этот код в подклассе, который не может нажимать ссылки в текстовом режиме и не показывает меню копирования/вставки. - (BOOL) canBecomeFirstResponder {return NO; } Затем я пишу этот код, затем разрешаю нажимать ссылки, но в другом текстовом шоу «Определить» - (BOOL) canPerformAction: (SEL) action withSender: (id) отправитель {if (action == @selector (selectAll :) && action = = @selector (выберите :) && action == @selector (cut :) && action == @selector (copy :) && action == @selector (paste :)) return NO; return [super canPerformAction: действие withSender: отправитель]; } PLZ помочь мне в этом случае. –

Смежные вопросы