Кнопка в UICollectionViewCell не работает

Я использую UICollectionView в первый раз. У меня есть кнопка в моем UICollectionViewCell. Я использую segues для подключения кнопки со следующим контроллером просмотра, который должен быть загружен при событии нажатия кнопки.

Кнопка загружает следующий контроллер вида только для первой кнопки в списке ячеек коллекции. Для других кнопок кажется, что он не получает событие касания.

Есть идеи?

One Solution collect form web for “Кнопка в UICollectionViewCell не работает”

Решение вашей проблемы: либо создайте несколько ячеек прототипа, либо подключите IBAction каждой кнопки или зарегистрируйте действие кнопки при создании ячейки. Один из способов сделать это – захватить кнопку в cellForItemAtIndexPath: и сделать следующее:

 for (UIView *view in [cell.contentView subviews]) { if ([view isKindOfClass:[UIButton class]]) { switch (indexPath.item) { case 0: UIButton *myButton = (UIButton *)view; [myButton addTarget:self action:@selector(myAction:) forControlEvents:UIControlEventTouchUpInside]; break; case 1: UIButton *myOtherButton = (UIButton *)view; [myOtherButton addTarget:self action:@selector(myOtherAction:) forControlEvents:UIControlEventTouchUpInside]; break; default: break; } } } 

и т.п.

  • Как программно добавить UILabel в UICollectionViewCell в Swift 3
  • UICollectionView - репликация функций Photos.app
  • Как создать тень для UICollectionViewCell
  • dequeueReusableCellWithReuseIdentifier crash 'не может удалить вид вида «UICollectionElementKindCell» при вращении
  • iOS: Как изменить ориентацию UICollectionViewCell?
  • UILabel в пользовательском UICollectionViewCell всегда имеет значение null, не может обновлять текст
  • UICollectionView добавляет UICollectionCell
  • Инициализация пользовательского UICollectionViewCell
  • Как увеличить UICollectionViewCell при выборе Swift 3.0?
  • UILabel с дескриптором жесты Tap не работает
  • Невозможно установить тень на UICollectionViewCell и иметь закругленные углы. Могут делать только одну работу за раз
  • PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.