【问题标题】:UIScroll View not showing UICollection view as subviewUIScrollView 未将 UICollectionview 显示为子视图
【发布时间】:2015-08-03 13:49:40
【问题描述】:
 CGFloat h = [self getCollectionViewHeight];

NSDictionary *metrics = @{@"WPTableViewWidth"       : @(self.frame.size.width/3),
                @"verticalMargin"         : @(verticalMargin),
                @"intranetHeight"         :@(h),
                @"imageGalleryHeight"     :@([_imageGallery GetHeight]),
                @"nonimageGalleryHeight"  :@([_nonimageGallery GetHeight]),
                @"commentHeight"          :@(0)};

基本上我在 ScrollVIew 添加一个 UICollectionView 作为子视图。当我设置约束时,我使用的是上面的 Metrics。我被困在这里,当我在这里直接硬编码一个值代替“h”时,集合视图是可见的。如果我做 CGFloat h = 500; //一些随机值 集合视图可见。 但是,如果我从 Collection 视图的 contentSize 计算或获取高度并将其分配给“h”并传递给指标。集合视图不可见。 简而言之,直接传递值显示集合视图,但当从某些超级视图或 UICollectionview.contentview.height 派生时,它不显示集合视图。

【问题讨论】:

    标签: ios uiscrollview autolayout uicollectionview constraints


    【解决方案1】:

    我建议,[self getCollectionViewHeight] 返回0? (只需在创建metricsNSDictionary 的行处设置断点并查看h 的值。)如果是这种情况,我建议您在代码中的错误点初始化metrics (也许在视图控制器的init 方法中?)。如果是这样,只需将您的“指标创建代码”移动到视图控制器的 viewDidLoad 方法中 - 这是在 UIView 大小已经计算之后的点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-18
      • 1970-01-01
      • 1970-01-01
      • 2021-03-08
      • 2018-09-03
      • 1970-01-01
      • 2021-01-21
      相关资源
      最近更新 更多