Я хочу отключить редактирование текста в UITextView, остается только курсор. Я уже отключил клавиатуру, вырезал-скопировать-вставить меню и режим редактирования масштабирования. Но есть еще одна проблема - если я дважды нажимаю на TextView, он выбирает целое слово. И еще одно: как я могу позволить курсору выбрать любое место, а не только конец или начало слова?Отключить выбор текста в UITextView
Я сделал скриншоты, которые лучше описывают мою проблему, но не могут опубликовать ее из-за репутации. Поэтому я надеюсь, что вы поймете, что я имею в виду.
Подкласс UITextView:
#import "UIUneditableTextView.h"
@implementation UIUneditableTextView
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// Initialization code
}
return self;
}
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
UIMenuController *menuController = [UIMenuController sharedMenuController];
if (menuController) {
[UIMenuController sharedMenuController].menuVisible = NO;
}
return NO;
}
-(void)addGestureRecognizerForLongPress:(UIGestureRecognizer *)gestureRecognizer
{
if ([gestureRecognizer isKindOfClass:[UILongPressGestureRecognizer class]]){
gestureRecognizer.enabled = NO;
}
[super addGestureRecognizer:gestureRecognizer];
return;
}
@end
Что вы имеете в виду «вы можете действовать как' inputDelegate'»? Я почти уверен, что вы не можете. Согласно документации Apple: «UIKit предоставляет частный делегат ввода текста, который он присваивает во время выполнения свойству' inputDelegate' объекта, класс которого использует протокол UITextInput'. –