这是一个带有标题的UICollectionVIEwController.标头包含2个UILabel对象和一个UITextVIEw对象.这些对象的布局由垂直UIStackVIEw管理. UIVIEw用于设置白色背景.
我在运行时定义此UICollectionReusableVIEw的高度时遇到了一些困难.任何建议表示赞赏.
解决方法 这有点像黑客,但似乎有效.// showhere to keep a referenceUICollectionReusableVIEw * _cachedheaderVIEw;- (UICollectionReusableVIEw *)collectionVIEw:(UICollectionVIEw *)collectionVIEw vIEwForSupplementaryElementOfKind:(Nsstring *)kind atIndexPath:(NSIndexPath *)indexPath{ if(!_cachedheaderVIEw){ // dequeue the cell from storyboard _cachedheaderVIEw = [collectionVIEw dequeueReusableCellWithReuseIDentifIEr:[Nsstring stringWithFormat:@"header_cell"] forIndexPath:indexPath]; // set captions/images on the header etc... // tell the collectionvIEw to redraw this section [self.collectionVIEw reloadSections:[NSIndexSet indexSetWithIndex:indexPath.section]]; } return _cachedheaderVIEw;}- (CGSize)collectionVIEw:(UICollectionVIEw *)collectionVIEw layout:(UICollectionVIEwLayout*)collectionVIEwLayout referenceSizeforheaderInSection:(NSInteger)section{ // once there is a reference ot the vIEw,use it to figure out the height if(_cachedheaderVIEw){ return [_cachedheaderVIEw systemLayoutSizefittingSize:collectionVIEw.bounds.size withHorizontalFittingPriority:UILayoutPriorityrequired verticalFittingPriority:UILayoutPriorityDefaultLow]; } // a placeholder value just to get the dequeueReusableCellWithReuseIDentifIEr to work return CGSizeMake(collectionVIEw.bounds.size.wIDth,100);}总结
以上是内存溢出为你收集整理的ios – 自动调整UICollectionView标头大小全部内容,希望文章能够帮你解决ios – 自动调整UICollectionView标头大小所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)