Я сворачиваю и разворачиваю разделы, переключая numberOfItemsInSection:
. При сворачивании элементы исчезают из-за исчезновения альфа-канала. Я хотел бы изменить этот эффект на их уменьшение.
Я думаю, что смогу реализовать это с помощью пользовательского UICollectionViewFlowLayout
и перегруженного layoutAttributesForItemAtIndexPath:
. Но когда раздел сворачивается, numberOfItemsInSection:
возвращает 0, поэтому я не могу установить масштаб назначения для этих элементов.
Какой правильный подход?
1 ответ
Нашли подход: нам нужно создать подкласс UICollectionViewFlowLayout
и переопределить finalLayoutAttributesForDisappearingItemAtIndexPath:
Например:
- (UICollectionViewLayoutAttributes *)finalLayoutAttributesForDisappearingItemAtIndexPath:(NSIndexPath *)itemIndexPath
{
UICollectionViewLayoutAttributes *attributes = [super finalLayoutAttributesForDisappearingItemAtIndexPath:itemIndexPath];
attributes.frame = CGRectInset(attributes.frame, 20, 20);
return attributes;
}
Похожие вопросы
Новые вопросы
uicollectionview
Класс UICollectionView управляет упорядоченным набором элементов данных и представляет их с помощью настраиваемых макетов. Представления коллекции предоставляют ту же общую функцию, что и представления таблицы, за исключением того, что представление коллекции может поддерживать не только макеты из одного столбца. Представления коллекции поддерживают настраиваемые макеты, которые можно использовать для реализации многостолбцовых сеток, мозаичных макетов, круговых макетов и многого другого. Доступный в iOS 6.0 и позже