我想用
我们正在编写的-preferredLayoutAttributesFittingAttributes
子类中的 UICollectionviewCell
。
目前我们已经有一个指向parentViewController
的弱指针,我尝试将collectionViewcell框架宽度设置为与parentViewcontroller.view.frame.size.width
相同。
我不希望从parentViewController
子类获得指向CollectionViewCell
的指针,因为对parentviewcontroller的引用是一个坏主意。
我的问题是......
是否有一种简单而理想的方法可以从collectionViewcell
类中获取collectionviewcell的超级视图框架?
答案 0 :(得分:2)
如果您想使用父视图,那么您不需要任何参考。你可以这样做:
CGFloat width = self.superview.frame.size.width;
正如@Ralfonso在评论中指出的那样:
此外,如果要在添加到视图层次结构后立即获取超视图大小,请覆盖didMoveToSuperview:
并访问superview属性。如果它为零,则视图已从超级视图中删除。如果为非nil,则视图已添加到superview的层次结构中。