gpt4 book ai didi

iphone - 正确处理 didReceiveMemoryWarning

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:50:07 27 4
gpt4 key购买 nike

我的一个 UIViewController 有几个 subview Controller 。它们是在界面生成器中构建的,方法是将 NSObject 拖到左侧的“Objects”部分,然后放入我自己的 SpecialViewController 作为“Custom Class”。通过此设置,在 viewDidLoad 上,我将准备好我的 View 和 Controller 。以下屏幕截图建议使用工作流程:

Drag "Object" to create instance

在我的实现中,我有:

@interface ParentController : UIViewController
{
SpecialViewController *svc;
}
@property (nonatomic, retain) IBOutlet SpecialViewController *svc;

据我所知,在 didReceiveMemoryWarning 期间,我应该释放自己的资源。然后在 viewDidUnload 期间将 IBOutlets 设置为 nil。

我在模拟器中模拟低内存时崩溃,调试器在 SpecialViewControllerdidReceiveMemoryWarning 暂停(其主体只是 [super didReceiveMemoryWarning];),错误 EXC_BAD_ACCESS (code=1, address=0xe0000008)。此时父 Controller 不可见,可以安全释放。

父 Controller 在didReceiveMemoryWarning中也只包含[super didReceiveMemoryWarning];。我已经尝试在这两个类中使用 niling IBOutlets。它没有帮助。

知道为什么会这样吗?

我的目标是使用 ARC 的 iOS 4 和 5。 SpecialViewControllerUITableViewController 的子类。

通过跟踪,我发现在SpecialViewController之前调用了ParentController didReceiveMemoryWarning

最佳答案

看起来您在此处的 View Controller 中有一个 View Controller 。您选择创建这样的类(class)有什么特别的原因吗?根据我的经验,每个 UIViewController 都应该是一个单独的子类。基于您的错误出现在 didReceiveMemoryWarning 中这一事实,我认为问题出在其他地方。你能分享这个 View Controller 的初始化代码吗?

如果您正在尝试 UIViewController Containment 之类的东西,您可能应该查看涵盖此过程的 WWDC 主题。

关于iphone - 正确处理 didReceiveMemoryWarning,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10429235/

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