Size: a a a

2020 October 14

SL

Sergey Lavinov in Peer Lab SPB
Всем привет, подскажите, пожалуйста, существует ли правильный способ "распределить" обновление UI во времени?
Есть место, где в цикле обновляется порядка 50 вьюшек, это вызывает ощутимое подлагивание, если сделать вот так (пожалуйста, не бейте), то лаг исчезает
DispatchQueue.main.asyncAfter(deadline: .now() + 0.01 * index, execute: { ... }

Как я понял, поступать так - идея плохая, есть какая-то хорошая практика?
Или лаг на 50-ти вьюшках это в принципе плохо, так быть не должно и я куда-то не туда копаю?
источник

AR

Andrei Rychkov in Peer Lab SPB
Как у тебя 50 вьюшек поместились на экране?
источник

SL

Sergey Lavinov in Peer Lab SPB
Карта, на ней аннотации
источник

AR

Andrei Rychkov in Peer Lab SPB
Можешь прислать скрин?
источник

SL

Sergey Lavinov in Peer Lab SPB
Скрин с компрометирующей ленточкой)
При смене стейта все маркеры меняются на сложную вьюшку из нескольких элементов
Обе вьюшки предсозданы и сохранены, в момент смены состояния происходит только подмена, они не пересоздаются
источник

AR

Andrei Rychkov in Peer Lab SPB
Пока не очень понимаю, в чем проблема. Если размеры известны, то все должно быть ок. Что профилировщик показывает?
источник

SL

Sergey Lavinov in Peer Lab SPB
Time Profiler показывает weight 17% на функцию, которая выставляет большие вьюхи, выглядит она вот так, простая подмена
источник

FG

Ferrero Gram in Peer Lab SPB
Sergey Lavinov
Time Profiler показывает weight 17% на функцию, которая выставляет большие вьюхи, выглядит она вот так, простая подмена
Вьюху лучше прятать, а не удалять из иерархии
источник

SL

Sergey Lavinov in Peer Lab SPB
Ferrero Gram
Вьюху лучше прятать, а не удалять из иерархии
То есть добавить сразу обе и менять visible?
источник

FG

Ferrero Gram in Peer Lab SPB
Sergey Lavinov
То есть добавить сразу обе и менять visible?
Ага, как один из решений
источник

FG

Ferrero Gram in Peer Lab SPB
Также советую выставлять state через енам, а не строку
источник

SL

Sergey Lavinov in Peer Lab SPB
Спасибо, попробую в ближайшее время
источник

DS

Daniil S in Peer Lab SPB
Ребят, вы когда  firebase добавляли, у вас случайно при деплое не ругался на тонну пермишенов, которые надо указать?
источник

FG

Ferrero Gram in Peer Lab SPB
Это ведро ругается или айось?
источник

DS

Daniil S in Peer Lab SPB
а то я релиз сборку тестил, собирал, но в тестфлайт ругнулся на локацию, контакты, музыку и тд
источник

DS

Daniil S in Peer Lab SPB
айось
источник

DS

Daniil S in Peer Lab SPB
хотя я не пользую их вообще
источник

FG

Ferrero Gram in Peer Lab SPB
А в доке по фб не сказано ни про какие пермишны?
источник

DS

Daniil S in Peer Lab SPB
в сертификате не может такое быть прописано случаем, просто он не мой
источник

DS

Daniil S in Peer Lab SPB
Ferrero Gram
А в доке по фб не сказано ни про какие пермишны?
нет, не было
источник