UICollectionView не может свернуть или удалить дополнительный вид

У меня есть uicollectionview с использованием макета потока, который имеет дополнительное представление заголовка, которое является представлением, которое я только иногда хочу отображать. Поэтому в основном я хочу иметь кнопку, которая при нажатии будет удалять дополнительный вид из представления коллекции, а также переместить все элементы в виде коллекции с учетом того, что заголовок отсутствует. Это возможно? Я неоднократно пробовал это много раз. Изменение размера ссылочного заголовка, изменение моего ответа на метод делегата для размера заголовка, аннулирование макета, перезагрузка данных и т. Д. И т. Д. Что мне не хватает?

Я только что проверил тест. Я думаю, что это связано с использованием UIDynamics, что это в UIDynamics, которая бы переопределила мой ответ делегата для ссылочного размера раздела заголовка?

В методах макета делегата верните соответствующий размер для любого интересующего вас состояния:

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section { if (self.headerVisble) { return CGSizeMake(collectionView.bounds.size.width, 30.0f); } else { return CGSizeZero; } } 

Затем, когда вам нужно обновить вызов макета:

 [collectionView.collectionViewLayout invalidateLayout]; 

В представлении коллекции будет задан объект Layout для новой информации, который, в свою очередь, попросит вашего делегата. Я считаю, что это тоже изменит эту перемену.

Interesting Posts
Давайте будем гением компьютера.