2011-04-02 3 views
1

Этот вопрос встречается кем-то другим, но я не видел никаких решений - см. (http://openradar.appspot.com/6941930).Два видимых CATiledLayers, вызывающих проблемы!

У меня есть UIScrollView, чей слой содержимого содержит два CATiledLayers. Один черепичный слой довольно быстро рисует контент (но достаточно длинный, чтобы сделать drawInRect: слишком медленно!), А другой медленно рисует их.

Более быстрый CATiledLayer не имеет Zoom имеет установленные настройки LOD с большим размером плитки.

Более медленный CATiledLayer масштабируется.

Использование только одного из CATiledLayers ведет себя так, как ожидалось.

Проблема заключается в добавлении обоих слоев к видимому экрану, что приводит к тому, что один или другой человек ведет себя медленно. Раздражающе, похоже, что контент, который получается обычно быстро, намного медленнее.

Я еще не видел пути, чтобы надежно узнать, когда один CATiledLayer завершил свою ничью.

Я думаю, что решение было бы поставить очередь на черепичные слои, поэтому нарисуйте более медленный черепичный слой, когда быстрее закончите. Но документация на CATiledLayer довольно плохая.

Я попытался использовать NSTimer и установить его на 3 секунды, прежде чем рисовать 2-й плиточный слой. Это, однако, похоже, не решает проблему! Я потерялся!

ответ

0

CATiledLayer, похоже, предпочитает плитки рядом с центром экрана. Возможно, один из ваших слоев ближе к краю?

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