Ios 内存泄漏UIStatusBarHideAnimationParameters
我在XCode中运行仪器并使用“泄漏”。在关闭Ios 内存泄漏UIStatusBarHideAnimationParameters,ios,xcode,Ios,Xcode,我在XCode中运行仪器并使用“泄漏”。在关闭UIImagePickerController后,我收到一个泄漏的对象 在详细信息面板中,我看到泄漏的对象为UIStatusBarHideAnimationParameters 我不明白这是从哪里来的。以下是我的密码- - (void) imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
UIImagePickerController
后,我收到一个泄漏的对象
在详细信息面板中,我看到泄漏的对象为UIStatusBarHideAnimationParameters
我不明白这是从哪里来的。以下是我的密码-
- (void) imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
// Handles when the image has been picked
NSString *mediaType = [info objectForKey: UIImagePickerControllerMediaType];
UIImage *originalImage, *editedImage, *imageToSave;
BOOL dismissed = NO;
[_activityIndicator show];
if (CFStringCompare((CFStringRef) mediaType, kUTTypeImage, 0) == kCFCompareEqualTo) {
editedImage = (UIImage *) [info objectForKey:UIImagePickerControllerEditedImage];
originalImage = (UIImage *) [info objectForKey:UIImagePickerControllerOriginalImage];
if (editedImage) {
imageToSave = editedImage;
} else {
imageToSave = originalImage;
}
NSData *imageData = UIImageJPEGRepresentation(imageToSave, 0.1);
imageToSave = [UIImage imageWithData:imageData];
// Display the image in the image view
[self displayImageInImageView:imageToSave];
[picker dismissViewControllerAnimated:YES completion:^{
[_activityIndicator show];
[self uploadPhotoToS3SyncWithImage:imageToSave];
[NSThread sleepForTimeInterval:1.5];
[_nextButton setEnabled:YES];
[_uploadPhotoButton setTitle:@"Upload Another" forState:UIControlStateNormal];
[self performSegueWithIdentifier:RIDEPhotoUploadToSetLocationSegue sender:self];
}];
dismissed = YES;
}
if (!dismissed) {
[picker dismissViewControllerAnimated:YES completion:nil];
}
}
当我单击扩展详细信息面板中的堆栈跟踪时,XCode突出显示了行discomered=YES
。但AFAIKBOOL
变量不必取消分配。也没有带ARC的拾取器
我遗漏了什么?也许您需要清除UIImagePickerController的代理?委托可以阻止对象被正确释放。是的,似乎就是这样。我将选择器的委托设置为nil,我不再看到这个特定的内存泄漏。谢谢。