2010-12-23 100 views
0

我有一個帶有自定義單元的UITableView。這些單元格包含每個OpenGL圖形(圖表)。當我滾動表格並隱藏單元格時,單元格開始銷燬對象的過程,如GLViewController和GLView。正如你所知,GLView有這樣的方法:destroyFramebuffer清除OpenGL圖形的分配緩衝區。 當我嘗試非常快速地滾動表格時發生問題。 請告訴我是這個框架的問題,它不能清除緩衝區或我怎麼能解決這個問題?iOS上的OpenGl內存管理

回答

1

在表格單元中擁有多個GL視圖是一個糟糕的主意。 每個GL視圖都分配了大量內存,並且銷燬GL緩衝區也花費了一些時間,在快速滾動過程中您可以看到什麼。 您應該重新設計您的應用程序以僅使用一個GL視圖(例如,將其隱藏起來,在其上構建圖形,將圖像捕捉到UIImage並僅在表格單元格中顯示它)。

+0

我不能這樣做,因爲當繪製圖形時,它有一個動畫,並且有幾種不同類型的圖形,所以重新設計的想法並不真實。 – 2010-12-23 11:42:28