在IOS中调整UICollectionView及其子视图的大小

时间:2014-10-14 11:46:09

标签: ios ios7 uicollectionview uicollectionviewcell

我正在开发一个IOS,我需要在GridView中显示图像。为此已使用UICollectionView,图像也会显示在网格中。

我已使用SWRevealViewController来实施Sidebar Navigation

我想要做的是,当SideBar被打开UICollectionView并且其Cells调整大小时,如图所示。 enter image description here

enter image description here 我已经做的是

以上图片来自Android内置的同一个应用。

以下是我为IOS应用所做的图像。 enter image description here enter image description here

如果有人可以帮助实现这一点,那将是一个很大的帮助。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

当您点击按钮时,请调用此

[self.collectionView performBatchUpdates:nil completion:nil];

它将使布局无效并使用动画调整单元格大小(如果您没有进行额外调整,则可以将nil传递给两个块参数)。

然后

- (CGSize)collectionView:(UICollectionView *)collectionView
                  layout:(UICollectionViewLayout *)collectionViewLayout
  sizeForItemAtIndexPath:(NSIndexPath *)indexPath
{    
    // Adjust cell size for the mode slider opened or closed
    if (isSliderOpened) {
        return CGSizeMake(100.f, 100.f);
    }
    return CGSizeMake(200.f, 200.f);
}