Я пытаюсь нарисовать график, который бесконечно большой по горизонтали и имеет ту же высоту, что и экран. Я добавил UIScrollView и подкласс UIView внутри него, который реализует метод -drawRect:
. В симуляторе все работает нормально, а вот на устройстве не получается отрисовать график после достижения им определенного размера.
Я уже кэширую почти все, что могу, и в основном вызываю CGContextAddLineToPoint только в разделе -drawRect:
. Я рисую только то, что видно на экране. У меня есть делегат UIScrollView, который прослушивает -scrollViewDidScroll:
, который затем сообщает графику о перерисовке себя ([graphView setNeedsDisplay]
).
Я нашел один метод, который говорит мне переопределить метод +layerClass
и вернуть [CATiledLayer class]
. Это действительно позволяет графу рисовать на устройстве, но работает очень плохо. На самом деле рисовать невероятно медленно, и возникающее затухание нежелательно.
Какие-либо предложения?