我有一个带有自定义单元格的UITableView。这些单元格包含每个OpenGL绘图(图形图表)。当我滚动表格并且单元格变为隐藏时,单元格开始销毁对象,例如GLViewController和GLView。如您所知GLView有此方法:destroyFramebuffer,它为OpenGL图形清除分配的缓冲区。
当我尝试非常快速地滚动表格时,会发生我的问题。
请告诉我这是框架的问题,该框架无法清除缓冲区,或者我怎么解决这个问题?
最佳答案
在表格单元中具有多个GL视图真是个坏主意。
每个GL视图分配大量内存,销毁GL缓冲区也要花费一些时间,这在快速滚动过程中可以看到。
您应该重新设计应用程序以仅使用一个GL视图(例如,将其隐藏,在其上构建图,将图像捕获到UIImage并仅在表单元格中显示它)。