gpt4 book ai didi

iphone - pushViewController 是否保留 Controller ?

转载 作者:太空狗 更新时间:2023-10-30 03:23:57 26 4
gpt4 key购买 nike

我正在努力寻找 pushViewController 是否保留 Controller ,目前我有以下代码(有效)......

ColorController *colorController = [[ColorController alloc] initWithNibName:nibColor bundle:nil];
[[self navigationController] pushViewController:colorController animated:YES];
[colorController release];

但我正在考虑删除发布并添加自动发布......

ColorController *colorController = [[[ColorController alloc] initWithNibName:nibColor bundle:nil] autorelease];
[[self navigationController] pushViewController:colorController animated:YES];

非常感谢

加里

最佳答案

这什么都不做...

ColorController *colorController = [[ColorController alloc] initWithNibName:nibColor bundle:nil];
[[[self navigationController] pushViewController:colorController animated:YES] autorelease];

你正在自动释放 pushViewController:animated: 的返回值,它是无效的。

您的第一个片段有效且正确。 pushViewController:确实保留了被推送的 Controller 。

编辑:在您更新的代码中,两个示例之间几乎没有区别。两者都保持适当的保留计数。但是,除非必要(尤其是在内存敏感区域,如 iPhone),否则避免使用 autoRelease 是“最佳实践”。这有助于您的应用程序保持更可预测和可管理的内存占用。

关于iphone - pushViewController 是否保留 Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3559230/

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