2013-05-03 6 views
0

Я использую UICollectionView на своем iPad 3 для отображения панели инструментов BarChart с использованием CorePlot. У меня около 3 страниц 6 BarChart.UICollectionView scroll lags с основным графиком

Когда пользователь прокручивает UICollectionView, есть некоторые задержки.

Я изменил тему своего BarChart с kCPTDarkGradientTheme на kCPTPlainBlackTheme, и свиток намного лучше, но он все еще немного отстает.

Из инструмента, похоже, требуется несколько раз (160 мс) в - (void) recursivelyRenderInContext: (CGContextRef) контекст из CPTLayer.

Любая идея, как улучшить его? С уважением,

Sébastien.

+0

Можете ли вы показать свой - (NSNumber *) номерForPlot: (CPTPlot *) поле графика: (NSUInteger) fieldEnum recordIndex: (NSUInteger) index? – brianLikeApple

ответ

0

Твердые цвета визуализируются намного быстрее, чем градиенты, поэтому это объясняет улучшение при изменении тем. Вы кэшируете созданные графические изображения, поэтому их нужно только один раз отображать? Версия iOS в галерее пример приложения использует представление таблицы, чтобы отображать миниатюры графика, но это может дать вам некоторые идеи о том, как структурировать приложение для повышения производительности.

+0

Ваше право. Вчера я нашел решение иметь гладкую прокрутку. – sebastien

+0

Полный ответ ... Ваше право. Вчера я нашел решение иметь гладкую прокрутку! В моем UICollectionView я заменил CPTGraphHostingView простым UIImageView. Прежде чем показать UICollectionView, я создаю все BartCharts, а затем я использую для каждого метода imageOfLayer, чтобы получить UIImage, и я использую их в своем UICollectionView. Теперь у меня идеальная гладкая прокрутка для панели инструментов BarChart ;-) – sebastien