我的CollectionView单元格隐藏

时间:2015-09-28 06:42:50

标签: ios objective-c iphone

我使用的是ScrollView。在我的滚动视图中有Collection View。我的集合视图最后3个元素隐藏在空白区域内。在滚动ScrollView时,它们不显示。它们显示在滚动CollectionView上。我想显示所有Collection Cell On Scroll ScrollView。不滚动CollectionView。

-(NSInteger)numberOfSectionsInCollectionView:
(UICollectionView *)collectionView {

    return 1; // The number of sections we want
}
-(NSInteger)collectionView:(UICollectionView *)collectionView
    numberOfItemsInSection:(NSInteger)section {

    return 5; // the number of cells we want
}

- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionViewd
                  cellForItemAtIndexPath:(NSIndexPath *)indexPath {

    CollectionCell* cell =
    [collectionViewd dequeueReusableCellWithReuseIdentifier:@"collectionView2CellIdentifier"
                                               forIndexPath:indexPath]; // Create the cell from the storyboard cell

    cell.layer.cornerRadius = 4;
    cell.layer.borderWidth = 1;
    cell.layer.borderColor = [UIColor grayColor].CGColor;

    cell.yellow.layer.cornerRadius=4;
    cell.red.layer.cornerRadius=4;


    cell.title.text =[titleArray objectAtIndex:indexPath.row];
    cell.date.text =[dateArray objectAtIndex:indexPath.row];
    cell.incomeText.text =[netIncomeArray objectAtIndex:indexPath.row];
    cell.expenseText.text =[netExpenseArray objectAtIndex:indexPath.row];
     cell.saving.text =[savingArray objectAtIndex:indexPath.row];
    cell.expensePecentageText.text =[expensePercentage objectAtIndex:indexPath.row];
    cell.savingPercentage.text =[netProfitPercentage objectAtIndex:indexPath.row];

    return cell; // Return the cell
}

- (CGFloat)collectionView:(UICollectionView *) collectionView
                   layout:(UICollectionViewLayout *) collectionViewLayout
minimumInteritemSpacingForSectionAtIndex:(NSInteger) section {
    return 2.0;
}


- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout insetForSectionAtIndex:(NSInteger)section
{
    return UIEdgeInsetsMake(2, 2, 2, 2);
}
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath
{

    return CGSizeMake(155, 158);

}
    [scrollView setContentSize:CGSizeMake(0, expenseButton.frame.origin.y+expenseButton.frame.size.height+collection.frame.size.height+16)];

1 个答案:

答案 0 :(得分:1)

首先计算collectionview的高度:

例如

titleArray.count * 160(158px单元格高度+ 2px单元格空间)

然后将此高度指定给collectionview框架

还将此分配给scrollview内容大小高度。

这肯定会为你做到这一点。