2014-11-06 2 views
0

У меня есть контроллер представления с UICollectionView сверху (с использованием макета сетки по умолчанию), за которым следуют другие элементы управления. Когда я добавляю/удаляю ячейки в/из представления коллекции, я хочу, чтобы он расширялся/сокращался в вертикальном направлении (так что у него достаточно строк, чтобы показать все ячейки и не более), а все элементы управления ниже него для перемещения вниз/соответственно. Если вы представляете, как работают пользовательские интерфейсы приложений электронной почты при добавлении/удалении адресов, это эффект, который я пытаюсь реализовать. Однако достижение этого эффекта с использованием ограничений ускользает от меня. Любая помощь была бы очень признательна!iOS: анимация UICollectionView вертикальное расширение с ограничениями?

+0

У меня есть код контроллера вида, включая код, обрабатывающий добавление/удаление ячейки коллекции, но я сомневаюсь что это поможет. Я просто выложил элементы управления в IB и выбрал «Добавить все недостающие ограничения». Когда я добавляю/удаляю ячейки в/из представления коллекции, я хочу, чтобы он изменялся в соответствии с его содержимым, и другие элементы управления перемещаются вверх/вниз автоматически, но вся документация, которую я читал до сих пор по ограничениям, касается позиционирования чем изменение размера. –

ответ

1

Что я сделал:

  1. удалены все ограничения в IB
  2. добавил ограничение высоты на представлении сбора и подключения его к IBOutlet
  3. имели IB добавить недостающие ТРУДНОСТИ
  4. добавить наблюдателя для содержимого коллекции viewSize

Теперь, когда я добавляю ячейку в виде коллекции и tel l он перезагружается, я уведомляюсь, когда изменяется contentSize и может устанавливать константу для ограничения высоты на высоту contentSize. Результат: представление коллекции, которое изменяет размер, чтобы заполнить его содержимое, при этом другие элементы управления перемещаются вверх/вниз по мере необходимости :-)

Смежные вопросы