我目前正在使用@yonel中的 this excellent solution 来制作类似于FourSquare会场详情页面的内容。在我的故事板中,我有这个:
问题是:因为滚动有点滞后,当我快速滚动时,我得到一个“收到内存警告”。我的控制台中的消息。奇怪的是,如果我删除UIView
内的所有标签和按钮(正好在Map View
下方),一切正常。
知道可能出现什么问题吗?
答案 0 :(得分:2)
正如上面提到的海报所说,很难在没有真正看到项目代码的情况下向您提供任何权威信息 - 而且我知道您已经找到了可行的解决方案。但是,如果其他用户发现此问题的答案类似:
错误消息的性质表明您的应用程序中可能存在某种内存泄漏。开始调试此类问题的最佳方法是使用Instruments.app
中的内存分析工具。有关如何执行此操作的详细信息,请查看Apple Developer站点中的this link。
特别是如果屏幕上或屏幕上滚动的某些项目具有与之相关的图形信息(背景图像等) - 破坏屏幕外的内容可能有助于提高性能。当然,当他们回到屏幕上时,你将不得不重新创建有问题的物品。
如果上述方法无效,请查看以下一些问题/答案,以便深入了解发生此错误的其他问题。也许你的问题与之相关:
Zombies
是否未开启(在低内存设备中崩溃得更快)答案 1 :(得分:1)
不幸的是经过几天的搜索,我找不到解决方案。但我设法使用UITableView
找到了替换我所拥有的东西。
我发现这个ParallelView for UITableView:https://github.com/zhigang1992/ZGParallelView
感谢所有答案。
答案 2 :(得分:0)
我不熟悉Foursquare中的Venue Detail视图,但我认为如果不看一些代码我们就无法帮助您。
乍一看,我注意到还有另一种观点,你没有扩展。也许有些东西很重,但我认为你需要为这些视图显示一些代码,导致你更有可能执行一些内存密集型任务并导致问题。
最好如果你也可以使用scrollViewDidScroll方法:) 一旦发布了什么,我会尽力看看。或者,如果您不想公开发布,可以直接与我联系,并提供示例代码。
答案 3 :(得分:0)
收到内存警告,当我在设备中测试时,此警告显示在控制台中。但是当我关闭空闲应用程序时,错误消失了。所以尝试删除在后台运行的应用程序并再试一次。如果它存在,我认为问题是当你使用滚动某种内存泄漏时,来自地图图块或其他东西。 使用仪器并分析是否存在内存泄漏。
这可能对您有所帮助