任何人都可以帮我解决这个问题
我的代码:
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];
答案 0 :(得分:0)
没有设备具有无限的内存容量,因此您需要在此方案中小心。 iOS只是告诉你内存不足。可能是因为您为视图控制器分配了太多内存。您应该使用Instruments内存分析器来查看内存消耗的位置。仪器将告诉您视图控制器有多大。然后,您可以决定在何处投入时间进行优化(减少视图或减轻重量的视图)。
您是否考虑过使用UITableView / UICollectionView来显示此内容。使用表视图和集合视图,您可以显示内容列表(类似于滚动视图),但也可以通过延迟加载和单元重用等技巧来熟悉内存使用。