UITableViewCell с несколькими жесты: долго нажмите и нажмите

Как говорится в этом вопросе, я хотел бы реализовать два разных действия для крана и долгое нажатие на UITableViewCell.

Я считаю, что я должен отменить выбор строки на каждом этапе и не включать здесь никаких функций:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { [tableView deselectRowAtIndexPath:indexPath animated:NO]; } 

А затем добавьте Tap Gestures из раскадровки, но Storyboard дает мне ошибку, когда я перетаскиваю действия в прототипы ячеек. Советы?

2 Solutions collect form web for “UITableViewCell с несколькими жесты: долго нажмите и нажмите”

попробуй это –

В вашем методе cellForRowAtIndexPath вы можете добавить жест нажатия и длительный жест нажатия, а затем реализовать их. При этом ваша функция didselect не потребуется, и вам не нужно будет deSelect .

 UITapGestureRecognizer *tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(cellTapped:)]; tapGestureRecognizer.numberOfTapsRequired = 1; tapGestureRecognizer.numberOfTouchesRequired = 1; cell.tag = indexPath.row; [cell addGestureRecognizer:tapGestureRecognizer]; UILongPressGestureRecognizer *lpgr = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleLongPress:)]; lpgr.minimumPressDuration = 1.0; //seconds [cell addGestureRecognizer:lpgr]; cell.selectionStyle = UITableViewCellSelectionStyleNone; 

Теперь,

 -(void)handleLongPress:(UILongPressGestureRecognizer *)longPress { // Your code here } -(void)cellTapped:(UITapGestureRecognizer*)tap { // Your code here } 

Вы можете обрабатывать однократное действие с помощью метода UITableViewDelegate, который вы указали выше,

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

для выполнения UILongPressGestureRecognizer на вашем UITableViewCell следуйте этим инструкциям .

Надеюсь, это поможет.

  • Как изменить размер изображения в соответствии с ячейкой UITableView?
  • didFinishPickingMediaWithInfo NOT Called Swift
  • Как добавить нижнюю границу в заголовок раздела таблицы
  • Повторное использование iOS uitableview uitableviewcell имеет старые данные
  • Как заставить UITableViewCell отрегулировать высоту, чтобы соответствовать ее контенту?
  • uifyview headerViewForSection: всегда возвращает nil
  • UITableViewAutomaticDimension, применяемое к ячейке представления таблицы субтитров, не работает должным образом
  • Как сделать табличное представление разделенным на разделы буквой, как приложение для контактов
  • viewForHeaderInSection вызывается для каждого раздела, но первый UITableView
  • Только анимация ячейки из willDisplayCell при прокрутке пользователя, а не после reloadData
  • Исключение NSRangeException в UITableViewController со смешанным статическим / динамическим контентом
  • PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.