虽然以下系列适用于iPhone 7.1 / 8.1,但在iPad上它仅适用于7.1。在8.1上,内存使用率会一直上升,直到崩溃为止:
[self.navigationController pushViewController:detailController animated:YES];
这一行发生在这里:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
OBDialogDetailViewController* detailController = [[OBDialogDetailViewController alloc] initWithOption:(OBSelectionFilterOption*)option];
[self animateChangeForView:nil atIndexPath:indexPath toRect:CGRectMake(0, 0, 0, 0) andNewHeight:0];
if (self.navigationController)
{
[self.navigationController pushViewController:detailController animated:YES];
}
}
由于我只负责这个应用程序,thas已经发展了多年并且没有文档,我有点绝望。我现在搜索并尝试了两天的回答和解决方案。
请告诉我我可以提供的更多信息。
答案 0 :(得分:0)
在所有情况下都不会发生这种情况。但我想提一下几件事:
我试图在UINavigationController的目标视图控制器上播放加密视频(重文件)。当我在viewDidLoad中加载视频时,在视图控制器视图上解密和加载视频的方法需要时间。在这种情况下,请使用以下代码。
[self performSelectorInBackground:@selector(createVideoPlayer)withObject:nil]; [self performSelectorInBackground:@selector(createVideoPlayerControllerView)withObject:nil];
即使您使用ARC,也请参考this link来管理内存问题。
这可能不会直接回答您的问题,但肯定会帮助您进行调试。请发布您获得的任何解决方案。感谢。