Ios Swift 4 ImageIO_jpeg_数据中的UIImage内存泄漏
我有两个UIViewController,其中显示照片,事实上,当我在它们之间切换时,我会无限地添加50-70mb的RAM等等 "Ios Swift 4 ImageIO_jpeg_数据中的UIImage内存泄漏,ios,swift,instruments,Ios,Swift,Instruments,我有两个UIViewController,其中显示照片,事实上,当我在它们之间切换时,我会无限地添加50-70mb的RAM等等 " “我在您的图表中没有看到任何内存泄漏。它只显示到目前为止使用的内存量。内存泄漏是第二行,如果有,则用红色标记。有关更多信息,请查看链接 如果图像太大,请尝试调整其大小。这将提高性能,并且在滚动时您的tableview将变得平滑 您应该使用contentOfFiles而不是storyboard设置图像。 删除图像输出和序列图像板中的图像,然后在viewDidLoa
“我在您的图表中没有看到任何内存泄漏。它只显示到目前为止使用的内存量。内存泄漏是第二行,如果有,则用红色标记。有关更多信息,请查看链接
如果图像太大,请尝试调整其大小。这将提高性能,并且在滚动时您的tableview将变得平滑 您应该使用contentOfFiles而不是storyboard设置图像。 删除图像输出和序列图像板中的图像,然后在viewDidLoad中使用以下代码:
override func viewDidLoad() {
super.viewDidLoad()
if let splashPath = Bundle.main.path(forResource: "bg", ofType: "png") {
backgroundImgView.image = UIImage.init(contentsOfFile: splashPath)
}
}
@Adrian添加了TagStableViewCell可能的重复项您是在为表视图分页,还是在数据源上加载“a gogo”图像数?顺便说一句,您的数据源中有多少图像?@GIJOW可能有不同的数字是的,我理解。我是指你的例子。但没关系,我会按照上面的链接。似乎您正在将web图像加载到
cellForRowAt
上,但内存未清理,而是挂起forever@AlexanderGovorukhin我不认为你有内存问题,如果你有,你会收到一个内存警告,你的应用程序将被关闭。请按照我的建议,尽量缩小图片的大小。也可能help@AlexanderGovorukhin可用于调整图像大小
override func viewDidLoad() {
super.viewDidLoad()
if let splashPath = Bundle.main.path(forResource: "bg", ofType: "png") {
backgroundImgView.image = UIImage.init(contentsOfFile: splashPath)
}
}