我有一個自定義的UITableViewCell從定製發現這裏的UITableViewCell教程爲藍本正是 - http://developer.apple.com/library/ios/#samplecode/AdvancedTableViewCells/Introduction/Intro.html#//apple_ref/doc/uid/DTS40009111爲什麼的drawRect在定製大型滾動影像比的UIImageView慢的UITableViewCell
一切使用呈現繪製3個字符串和1個圖像時,drawRect和滾動速度爲55 FPS。該圖像是通過繪製 -
[self.sampleImage drawInRect:CGRectMake(0, 0, 55, 55)];
奇怪的是,滾動速度降低至25 FPS,當我呈現相同的圖像,但在更大的區域
[self.sampleImage drawInRect:CGRectMake(0, 0, 320, 80)];
我在蘋果的drawRect中更大的圖像試驗示例代碼,足夠肯定幀速率下降到25 FPS。
問題在於當我繪製字符串並通過UIImageVew顯示圖像時,FPS回到55。
如何大的圖像在一個UITableViewCell使用drawRect中,同時保持50 FPS的滾動速度如何界定呢?
UIImageView是否比繪製drawRect(對於UITableViewCell)圖像更快?
有沒有GPU與CPU的力量?
有趣的,但爲什麼每個開發人員的文檔,包括蘋果自己的樣本推薦drawRect?只是爲了更小的圖像? – Sid 2011-04-14 21:49:33
我想這取決於你正在繪製什麼。例如,如果你有一個帶有多個文本標籤的複雜單元格,它可以(在較老的硬件上?)在單個'-drawRect'內繪製比在其中具有多個'UILabel'的單元更快。 HTH。 – nielsbot 2013-08-27 18:10:55