Проблемы рендеринга и задержки GMSMarker - PullRequest
0 голосов
/ 05 июня 2019

Я добавил 8 маркеров в GMSMapView

Маркеры имеют простое настраиваемое представление, построенное из UIImage и UILabel

Метка должна изменять текст каждые 10 секунд

Проблемав том, что каждый раз, когда нужно изменить текст, в пользовательском интерфейсе возникает небольшая задержка (что особенно заметно при прокрутке табличного представления)

То, как я это делаю, происходит внутри цикла:

Чтобы остановить рендеринг и дать процессору покоиться:
marker.tracksViewChanges = false

Подождите 10 секунд ...

Чтобы изменение текста вступило в силу:
marker.tracksViewChanges = true

marker.custoView.label.text = "некоторый новый текст"

Продолжить цикл

Есть ли способ сделать это без проблем с задержкой в ​​пользовательском интерфейсе?

1 Ответ

0 голосов
/ 06 июня 2019

Ну, я нашел какой-то обходной путь, если кому-то интересно:

Я добавил распознаватель жестов для окна делегата приложения.

Теперь, каждый раз, когда пользователь касается экрана, я отменяю процесс анимации (marker.tracksViewChanges = false) и перепланирую его снова.

Таким образом, задержка происходит только тогда, когда приложение статично, а пользователь этого не замечает.

...