1

У меня есть панель навигации, панель поиска и ниже, вид коллекции.Уведомление Message/Alert Message и UICollectionView:

Мой первый вопрос: Я хотел бы иметь собственную панель уведомлений (? Предупредительное сообщение), который будет отображаться прямо под моей панели поиска, над моей коллекции View, только первый раз я запускаю мое приложение, с возможность для пользователя, чтобы закрыть его, вот так:

Notification Message/Bar appears over the Collection View

Я пытался использовать UIAlertControllers но, очевидно, не собирается это сделать.

Мой второй вопрос:

Кроме того, как мне удалось получить тот же Notification Bar/сообщение, но, на этот раз, вместо того, чтобы поместить его над моей коллекции View, я пытаюсь найти способ надавите моей коллекции Просмотр ячейки, как появляется мой Notification Bar (анимация?), чтобы создать такой эффект, как, что:

Collection View pushed down by the Notification Message/Bar

большое спасибо за вашу помощь!

Иметь хороший день,

J.

ответ

0

Вы можете добиться этого с помощью UICollectionReusableView. Вам просто нужно изменить высоту заголовка в соответствии с вашим требованием.

вот пример проекта, который я сделал для вашей справки. вы можете запустить его и попробовать.

https://[email protected]/mahesh-agrawal/collection-popup-test.git

раздаточная ссылка - https://www.dropbox.com/s/j247mfshzld2tuj/collection-popup-test.zip?dl=0

проверить.

+0

Hi @ M.K. Спасибо за Ваш ответ ! Я мог бы просто пройти шаги 1, 2 и 3, ** однако я не уверен, как перейти к изменению рамки этого представления в соответствии с требованиями времени выполнения, как вы предложили. ** Что касается шага 4, как я могу выбрать размер (высота и ширина) моего всплывающего окна программно без объявления каких-либо ограничений? Спасибо за вашу помощь ! J. – jellyfish6

+0

, если вы хотите, чтобы всплывающее окно изменяло его высоту в соответствии с ее внутренним содержимым, просто добавьте UILabel в UIView и вызовите layoutIfNeeded для UIView после предоставления 4 ограничений выравнивания от метки к представлению. И исходя из этого требования, как я предполагаю, есть кнопка закрытия. по щелчку которого вы хотите, чтобы это всплывающее окно исчезло. Вы можете удалить UILabel из UIView и вызвать layoutIfNeeded, изменив высоту кадра UIView на 0. скажите мне, нужен ли вам образец, работающий с вашей целью. я сделаю это, и я дам вам ссылку репо.но если у вас есть то, что я сказал, тогда его лучше –

+0

извините, я раньше пробовал ошибочный подход, но придумал идеальное решение для вас. проверьте мой отредактированный ответ. –

1

Первый вопрос:
Вы можете добавить пользовательский вид (свою собственную панель уведомлений) сверху окна.

Второй вопрос:
Вы добавляете пользовательский вид над своим представлением коллекции и создаете розетку для ограничения высоты этого пользовательского вида.
Если у вас есть уведомление, вы устанавливаете heightconstraint # 0 и устанавливаете = 0, когда нет (с анимацией)

+0

Спасибо, я попробую сейчас :) – jellyfish6