drawRect使UIScrollView中的滚动变慢

| 我有一个带有(自定义)UIView的UIScrollView。 在我的scrollViewDidScroll方法中,我正在打电话
[myCustomView setNeedsDisplay];
如果我在自定义UIView中实现drawRect:方法,则滚动会明显变慢-即使它完全为空。 一旦删除了drawRect:方法,它就会再次变得平滑。 我完全不知道,为什么...你们中的任何一个?     
已邀请:
我也讨厌drawrect \“这是因为可可动画中的硬件加速动画的工作方式。 如果您没有自定义的drawRect方法,则系统会将视图的像素缓存在视频内存中。当需要重绘它们时,它只是将像素拖拉到屏幕上。 如果您有一个自定义的drawRect方法,则系统必须调用您的drawRect方法在主内存中渲染像素,然后将这些像素复制到视频内存中,然后每隔一帧将像素绘制到屏幕上。文档说,如果可以,请避免使用drawRect。 我认为主内存和视频内存在大多数/所有iOS设备上共享,但是当您为视图实现drawRect方法时,系统还有很多工作要做。 使用OpenGL层并通过OpenGL调用对其进行渲染可能会更好,因为OpenGL直接与显示硬件对话。\“ 引用链接:http://www.iphonedevsdk.com/forum/iphone-sdk-development/80637-drawrect-makes-scrolling-slow-uiscrollview.html     

要回复问题请先登录注册