这是问题所在: 我写这显示一些图片,有树图布局应用程序(用于示例,请参见https://raw.github.com/beckchr/ithaka-treemap/master/Core-API.png) 这种布局显示在一个UIScrollView 。由于许多图片可以添加到该滚动视图,我想释放当前不在屏幕上的图片。我没有使用ARC。的iOS缓慢释放图像滚动时(无实现代码如下)
在我看来,我知道我应该发布哪些图片,以及如何在滚动时调用它(调用一些“卸载”方法)。这种方法没有任何用处。问题是,当图片被释放时,滚动停止片刻(几毫秒,但这足以造成不好看,使得滚动类型“跳跃”而缓慢,根本不流畅)。
我已经试过(把我的“卸载”方法体):
imageview.image = nil
performSelectorInBackground:@selector(effectiveUnload) withObject:nil
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND,0,^(void){
dispatch_sync(dispatch_get_main_queue(), ^(void){
imageview.image=nil}
}
我觉得这个问题很奇怪,因为有是绝对内存分配没有减速效果,但只内存释放。
感谢您的帮助,请不要犹豫,以获取更多信息。
有什么原因你不使用UITableView? – Fogmeister 2013-04-30 07:36:52
主要原因是树形图显示。我的图片有一些图案,可以更改(不会显示稳定布局的列表) – 2013-04-30 07:57:36