Как передать касание от UITextView до UITableViewCell

У меня есть UITextView в пользовательском UITableViewCell. textview работает правильно (прокрутки, выставочный текст, и т.д.), но мне нужны пользователи, чтобы смочь коснуться ячейки таблицы и перейти к другому экрану. Прямо сейчас при ответвлении краев ячейки таблицы (т.е. за пределами UItextView), следующее представление правильно называют. Но ясно в uitextview касания получаются и не передаются ячейке таблицы.

Я нашел сообщение, которое говорило о разделении на подклассы UITextView для передачи касаний. Я попробовал это без удачи. Реализация ниже. Я задаюсь вопросом, ли, возможно супер a) супер супер из моего textview не является uitableviewcell и таким образом я должен передать касание некоторый другой путь или b) Супер, если супер является uitableviewcell, если я должен передать что-то еще? Любая справка очень ценилась бы.

#import "ScrollableTextView.h"

@implementation ScrollableTextView

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    if (parentScrollView) {
        [parentScrollView touchesBegan:touches withEvent:event];
    }
    [super touchesBegan:touches withEvent:event];
}

- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event {
    if (parentScrollView) {
        [parentScrollView touchesCancelled:touches withEvent:event];
    }
    [super touchesCancelled:touches withEvent:event];
}

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
    if (parentScrollView) {
        [parentScrollView touchesEnded:touches withEvent:event];
    }
    [super touchesEnded:touches withEvent:event];
}

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
    if (parentScrollView) {
        [parentScrollView touchesMoved:touches withEvent:event];
    }
    [super touchesMoved:touches withEvent:event];
}

- (BOOL)canBecomeFirstResponder {
    return YES;
}

@end
14
задан Martin 19 March 2010 в 14:55
поделиться

1 ответ

Попробуйте [theTextView setUserInteractionEnabled: NO]; Если пользователю необходимо иметь возможность редактировать содержимое TextView, вы можете есть проблема с дизайном здесь.

Swift 3: theTextView.isUserInteractionEnabled = false

Раскадровка: установите флажок «Взаимодействие с пользователем включено».

33
ответ дан 1 December 2019 в 07:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: