Клуб API Карт

Белая подложка при скролле в iOS

info@fleetmap.ru
21 апреля 2016, 11:06

При любом скролле карты на любом iOS видна раздражающая белая подложка:

Даже для уже закэшированных тайлов. Понятно, что нужно время на то, чтобы вставить тайл в DOM.

Вопрос: нельзя ли как-то этого избежать пусть даже и ценой тормозов? Например, как-то заставить АПИ пререндерить часть тайлов за пределами границы карты? Не нашёл такой опции (кроме margin в MovablePane, но непонятно то ли это и как применить к встроенному ground-пэйну)

6 комментариев
Подписаться на комментарии к посту
Да, map.panes._hash.ground.pane._margin = 500 помогает

Но это не через АПИ. А как через АПИ?
info@fleetmap.ru,
https://tech.yandex.ru/maps/doc/jsapi/2.1/ref/reference/map.pane.Manager-docpage/
Konstantin Yakushev
21 апреля 2016, 13:55
dimik,
да, про менеджер разобрался, спасибо. Но не понимаю, как поменять в пейне маргин. Ну то есть я могу сделать
map.panes.get('ground')._margin = 500, но это же тоже не то :)

А MovablePane вроде бы принимает margin только в конструктор: https://tech.yandex.ru/maps/doc/jsapi/2.1/ref/reference/pane.MovablePane-docpage/

Можно как-то подменить ground пэйн на собственный через менеджер?
Konstantin Yakushev,
Попробуйте перекрыть метод getViewport своей реализацией
https://tech.yandex.ru/maps/doc/jsapi/2.1-dev/ref/reference/pane.MovablePane-docpage/
Не стоит увеличивать margin пейна, особенно на iOS. Особенно сразу на 500. А меньшие значения тут не помогут.
Подождите немного, тут решать надо с нашей стороны.
Konstantin Yakushev
21 апреля 2016, 15:54
thekashey,
а чем конкретно я рискую? Что пойдёт не так?