Изменение размера UICollectionView и его подпунктов в IOS

Я разрабатываю IOS, в котором мне нужно показывать изображения в GridView. Для этого использовали UICollectionView и изображения также отображаются в Grid.

Я использовал SWRevealViewController для реализации Sidebar Navigation.

Что я хочу сделать, так это то, что когда SideBar открывается UICollectionView и его Cells для изменения размера, как показано на изображении.

Что я уже сделал

Вышеуказанные изображения из одного и того же приложения, встроенного в Android.

Ниже приведены изображения, которые я сделал для приложения IOS.

Если кто-то может помочь добиться того же, это будет большой помощью. Заранее спасибо.

1 ответ

когда вы нажимаете кнопку, вызывайте это

[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);
}

licensed under cc by-sa 3.0 with attribution.