Objective c UIScrollView导致模拟内存崩溃警告
我在模拟器中模拟内存警告时跟踪了导致应用程序崩溃的代码Objective c UIScrollView导致模拟内存崩溃警告,objective-c,cocoa,memory-management,uiscrollview,interface-builder,Objective C,Cocoa,Memory Management,Uiscrollview,Interface Builder,我在模拟器中模拟内存警告时跟踪了导致应用程序崩溃的代码 - (void)viewDidLoad { [super viewDidLoad]; ... self.scrollView.contentSize = CGSizeMake(self.viewContent.frame.size.width,self.viewContent.frame.size.height); [self.scrollView addSubview:self.viewCont
- (void)viewDidLoad
{
[super viewDidLoad];
...
self.scrollView.contentSize = CGSizeMake(self.viewContent.frame.size.width,self.viewContent.frame.size.height);
[self.scrollView addSubview:self.viewContent];
[self.view addSubview:self.scrollView];
...
}
这是一个与创建滚动视图相关的代码,如果我不使用该代码,应用程序不会因模拟内存警告而崩溃(问题肯定出在创建滚动视图的方式上,但我看不到问题)
应用程序运行正常,滚动正常,但当我在[super didReceiveMemoryWarning]中模拟EXCP_BAD_ACCESS上的内存警告时,它崩溃了;如果我不进行滚动,只需将视图设置为内容视图作为视图(在IB中),就可以了
那么如何创建滚动呢
- 在interface builder中,我有一个空白视图,它被设置为 对于文件所有者(self.view)
- 我有一个独立的滚动视图,它通过outlet链接到 self.scrollView
- 我有一个独立的UIView,它保存所有的控件、按钮、标签、表格和链接 带self.viewContent
在View Dead加载中,我只需执行上面的代码(因此,将滚动广告的大小调整为滚动视图的子视图,而不是将空白视图添加到空白视图)
怎么了?(我还尝试在代码中创建滚动视图,但结果是一样的)当我模拟ReceiveMemoryWarning时,应用程序崩溃了在
viewDidUnload
中发生了什么?didReceiveMemoryWarning
中发生的其他事件是此弧还是非弧;如果是ARC,IBOutlet
s是强参考还是弱参考?你能运行Zombies工具来找到导致错误的对象吗?您好,它在iOS4上的弧,在didReceiveMemoryWarning中只有[super didReceiveMemoryWarning](它在上面崩溃),插座不安全\u未恢复。。。视图中的另一个代码不重要(设置标签等)