使用委托将tableview偏移数据传递给tableview单元格

时间:2016-12-28 16:11:38

标签: ios swift uitableview

我不知道为什么,但代表们总是伤害我的大脑。

我有这样的代表:

protocol StylistControllerDelegate {
    func userInteractsWithTableView(tableViewOffset: CGFloat)
}

它位于StylistController内部,并在用户滚动时调用:

class StylistController: UIViewController, UITableViewDelegate, UITableViewDataSource, UIScrollViewDelegate {

var delegate : StylistControllerDelegate?

func scrollViewDidScroll(_ scrollView: UIScrollView) {
    let offset = scrollView.contentOffset.y
    self.delegate?.userInteractsWithTableView(tableViewOffset: offset)
}

在单元格内我试图将CGFloat值设置为变量:

class CollectionViewCell: UICollectionViewCell, StylistControllerDelegate {

    //var stylistControllerTableViewOffset: CGFloat?

    func userInteractsWithTableView(tableViewOffset: CGFloat) {
        print(tableViewOffset)
        if tableViewOffset > 100 {
            collectionView.isScrollEnabled = true
        } else {
            collectionView.isScrollEnabled = false
        }
    }
}

我使用偏移来启用和禁用在单元格中滚动集合视图的功能。一旦达到某个值(在这种情况下为100),就会启用滚动功能。

0 个答案:

没有答案