我们如何 return tableview 单元格内的集合视图的值?
How do we return a value of collection view that is inside of tableview cell?
我有一个 table 视图单元格,里面有一个集合视图,我想创建一个静态方法,我可以从 class 外部使用它来获取值,但我可以不要那样做
return table 视图单元格
中此集合视图大小的替代方法是什么
我所做的是我存储了一个 属性 和集合视图高度但不能 return 它在 func
有很多方法可以实现这一点。它使用协议的最简单方法之一。
在您的 CollectionViewCell 中但在您的 class 之外,定义协议:
protocol CollectionViewCellDelegate: class {
func sizeOfCollectionView(size: CGSize)
}
在您的 CollectionViewCell 中 class;将此协议定义为弱变量
weak var delegate: CollectionViewCellDelegate?
在您的 CollectionViewCell 中 class;你有正确尺寸的地方; return 使用以下方法将其发送给该委托的任何观察者:
self.delegate?.sizeOfCollectionView(size: bounds.size)
现在这个代表接收到 sizeOfCollectionView
个调用并且它 parent 可以观察到它。
例如:
在你的 parent class:
cell.delegate = self
完成此操作后尝试构建项目,Xcode 会告诉您您的 class 没有实现委托。然后您可以按如下方式定义委托:
extension ParentClass: CollectionViewDelegate {
func sizeOfCollectionView(size: CGSize) {
// You will receive size here
}
}
Here我还添加了一个中等教程来对此进行更详细的解释。
希望这些帮助!
我有一个 table 视图单元格,里面有一个集合视图,我想创建一个静态方法,我可以从 class 外部使用它来获取值,但我可以不要那样做 return table 视图单元格
中此集合视图大小的替代方法是什么我所做的是我存储了一个 属性 和集合视图高度但不能 return 它在 func
有很多方法可以实现这一点。它使用协议的最简单方法之一。
在您的 CollectionViewCell 中但在您的 class 之外,定义协议:
protocol CollectionViewCellDelegate: class {
func sizeOfCollectionView(size: CGSize)
}
在您的 CollectionViewCell 中 class;将此协议定义为弱变量
weak var delegate: CollectionViewCellDelegate?
在您的 CollectionViewCell 中 class;你有正确尺寸的地方; return 使用以下方法将其发送给该委托的任何观察者:
self.delegate?.sizeOfCollectionView(size: bounds.size)
现在这个代表接收到 sizeOfCollectionView
个调用并且它 parent 可以观察到它。
例如:
在你的 parent class:
cell.delegate = self
完成此操作后尝试构建项目,Xcode 会告诉您您的 class 没有实现委托。然后您可以按如下方式定义委托:
extension ParentClass: CollectionViewDelegate {
func sizeOfCollectionView(size: CGSize) {
// You will receive size here
}
}
Here我还添加了一个中等教程来对此进行更详细的解释。
希望这些帮助!