Действие нажатия кнопки в UICollectionViewCell в UITableViewCell - PullRequest
0 голосов
/ 23 января 2019

У меня есть эта иерархия.

UITableView -> UITableViewCell -> UICollectionView -> UICollectionViewCell -> UIButton. Как обрабатывать события касания на uibutton, используя swift4?

Ответы [ 2 ]

0 голосов
/ 23 января 2019

Пожалуйста, попробуйте это:

В tableView cellForRowAtIndexPath метод:

cell.yourCollectionView.tag = indexPath.row

В CollectionView cellForRowAtIndexPath метод:

cell.yourBtn.tag = collectionView.tag * 2000 + indexPath.item

В кнопке «Действие кнопки» напишите:

let collectionViewTag = sender.tag / 2000
let index = sender.tag % 2000

Это может вам помочь. Спасибо.

0 голосов
/ 23 января 2019

Внутри cellForRowAt до

let cell = ///
cell.collectionView.delegate = self
cell.collectionView.dataSource = self  

после этого вы сможете реализовать cellForItemAt внутри виртуальной машины, затем выполните

let collecCell = ///
collecCell.button.addTarget//////

@objc func buttonClicked(_ bt:UIButton) {}

относительно того, чтобы узнать, какой элемент можно использовать для этого свойства tag

...