Ios 创建大量视图控制器时收到内存警告

Ios 创建大量视图控制器时收到内存警告,ios,objective-c,Ios,Objective C,任何人都可以帮我解决这个问题 我的代码: NSMutableArray *listVC = [[NSMutableArray alloc] init]; HMScrollView *scrollView = [[HMScrollView alloc] initWithFrame:self.showView.bounds]; for (int i = 0; i < newsArray.count; i ++) { self.theNewDetailViewController =

任何人都可以帮我解决这个问题

我的代码:

NSMutableArray *listVC = [[NSMutableArray alloc] init];
HMScrollView *scrollView = [[HMScrollView alloc] initWithFrame:self.showView.bounds];

for (int i = 0; i < newsArray.count; i ++) {
    self.theNewDetailViewController = [[NewDetailViewController alloc] initWithNibName:@"NewDetailViewController" bundle:nil];
    self.theNewDetailViewController.abmObj = (AboutUS_MobileService*)[newsArray objectAtIndex:i];

    [self.theNewDetailViewController.view setFrame:CGRectMake(2, 0, scrollView.frame.size.width-4, scrollView.frame.size.height)];

    [listVC addObject:self.theNewDetailViewController];


    [self addChildViewController:self.theNewDetailViewController];
    [self.theNewDetailViewController didMoveToParentViewController:self];
}

[scrollView setData:listVC atIndex:index];
[self.showView addSubview:scrollView];
[self.showView bringSubviewToFront:self.imageHeader];

没有设备具有无限的内存容量,因此在这里的场景中需要小心。iOS只是告诉你内存不足。可能是因为为视图控制器分配了太多内存。您应该使用Instruments memory profiler查看内存的使用位置。仪器将告诉您视图控制器有多大。然后,您可以决定在何处需要投入时间优化较少的视图或较轻的视图


您是否考虑过使用UITableView/UICollectionView来显示此内容。使用表视图和集合视图,您可以显示类似于滚动视图的内容列表,但也可以通过延迟加载和单元重用等技巧巧妙地使用内存。

Tks Sanjit感谢您的支持