iOS Horizo​​ntal Collection不会一直滚动

我有一个水平滚动的行集合视图. collectionview有效,但它会切断倒数第二个单元格(标记为橙色)并隐藏最后一个单元格.

我有5个细胞,每个细胞大小为166×166.我已经检查了viewlayout的内容大小,它的宽度是830,这是正确的,但我无法滚动那么远.

以下是Storyboard中的设置:

这是collectionview的代码.

#pragma mark Collection View Methods

-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView {
    return 1;
}

-(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
    return [array count];
}

-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
    UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"FeaturedCell" forIndexPath:indexPath];

    UILabel *label = (UILabel *) [cell viewWithTag: 100];
    label.text = [array objectAtIndex:indexPath.row];

    [cell.layer setBorderWidth:2.0f];
    [cell.layer setBorderColor:[UIColor whiteColor].CGColor];

    return cell;
}

最佳答案 视图大小的新IB默认值为600点.如果您不使用自动布局或其他方法来约束大小,框架将延伸到屏幕外并且不可见.如果这发生在320像素宽,你将失去240点,如果你的细胞宽166点,意味着你失去大约1 1/2个细胞.关于缺少什么.

确保集合视图具有一个尾随约束,其中常量0为superview边缘(或其他方法以确保大小匹配,例如与superview的“相等”宽度).

点赞