我正处于一个应用程序的最终开发阶段,该应用程序使用JASidePanels控件在应用程序的左侧显示一个菜单(该应用程序有5个主要部分)。
我现在非常依赖XCode的仪器来定位CPU和内存瓶颈,我注意到切换中心视图控制器似乎没有释放任何内存。因此,在使用应用程序时,内存增长并触发内存警告似乎没什么帮助。
当点击左侧面板菜单中的项目时,我使用以下方法切换中央面板:
- (void)updateCenterViewControllerWithIdentifier:(NSString *)storyboardIdentifier;
{
@try {
self.centerPanel = [self.storyboard instantiateViewControllerWithIdentifier:storyboardIdentifier];
} @catch (NSException *exception) {
DDLogError(@"%@", exception);
}
}
如果某人熟悉控制并且知道我可能做错了什么,那么建议一下会非常棒。提前致谢
答案 0 :(得分:0)
我认为问题在于异常处理。 Try-catch导致ARC中的内存泄漏。您可以在此处找到详细信息:https://stackoverflow.com/a/27142288/1073388
另一件事是你不应该使用异常处理来处理nib加载问题。唯一可能导致异常的问题是错误的笔尖名称,但在开发过程中可以检查和修复。仅在异常行为无法预测且应用程序应在异常执行代码块后终止的情况下才应使用异常。