У меня есть пользовательский UITableViewCell, смоделированный точно из пользовательских учебников UITableViewCell, найденных здесь -
http://developer.apple.com/library/ios/#samplecode/AdvancedTableViewCells/Introduction/Intro.html#//apple_ref/doc/uid/DTS40009111
и здесь -
http://developer.apple.com/library/ios/#samplecode/TableViewSuite/Introduction/Intro.html#//apple_ref/doc/uid/DTS40007318
Все отображается с использованием drawRect и скорость прокрутки составляет 55 FPS при рисовании 3 строк и 1 изображения. Изображение рисуется через -
[self.sampleImage drawInRect:CGRectMake(0, 0, 55, 55)];
Как ни странно, скорость прокрутки уменьшается до 25 кадров в секунду при рендеринге того же изображения, но в большей области
[self.sampleImage drawInRect:CGRectMake(0, 0, 320, 80)];
Я экспериментировал с большими изображениями в drawRect в примере кода Apple, и, конечно, частота кадров упала до 25 FPS.
Подвох в том, что FPS возвращается к 55, когда я рисую строки и отображаю изображение через UIImageVew.
Как можно рисовать большие изображения с помощью drawRect в UITableViewCell при сохранении скорости прокрутки 50 FPS?
Может ли UIImageView работать быстрее, чем рисование изображения в drawRect (для UITableViewCell)?
Есть ли какие-либо силы ГП против ЦП в игре?