gpt4 book ai didi

ios arc迁移项目presentViewController后内存清理

转载 作者:行者123 更新时间:2023-11-29 11:12:03 24 4
gpt4 key购买 nike

在我迁移到 ARC 之后使用 Instrument 我意识到从屏幕的转换不会清理内存。步骤示例:

1) 主屏幕 A -> 游戏屏幕 B = 内存使用率上升2)游戏结束,我从屏幕B回到主屏幕A

对于第 2 步,内存使用率并没有降低。我希望在从屏幕上移除屏幕 B 时释放屏幕 B 消耗的内存……我应该怎么做才能确保释放内存?

从 A 到 B:

GameVC_iPad *game = [[GameVC_iPad alloc]initWithNibName:@"ClassicGameVC_iPad" bundle:nil]; [self presentViewController:game animated:YES completion:nil];

从 B 返回到 A 是使用以下代码完成的:

HomeVC_iPad *home = [[HomeVC_iPad alloc]initWithNibName:@"HomeVC_iPad" bundle:nil]; home.modalTransitionStyle = UIModalTransitionStyleCrossDissolve; [self presentViewController:home animated:YES completion:nil];

有什么线索吗?

最佳答案

当你回到A你应该做的

[self dismissModalViewControllerAnimated:YES];

你目前正在做的是创建一个新的 View Controller ,但它是错误的,然后再导航到它,所以这就是正在发生的事情

A 呈现 B,然后你呈现一个新的 A,然后呈现一个新的 B,依此类推...

另请注意,当您导航到新的 viewController 时,iOS 会缓存一些 View 数据,因此您将永远无法在返回前后实现完美的内存使用,

关于ios arc迁移项目presentViewController后内存清理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11072114/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com