关于手机自带照相机内存泄露的问题
我在调用手机自带相机的时候出现了内存泄露,代码如下
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
imagePicker.allowsEditing = NO;
if (sender.tag == 1)
{
[imagePicker setSourceType:UIImagePickerControllerSourceTypeCamera];
}
else
{
[imagePicker setSourceType:UIImagePickerControllerSourceTypePhotoLibrary];
}
[imagePicker setDelegate:self];
NSLog(@"picker retaincount1 %i",[imagePicker retainCount]);
[self presentModalViewController:imagePicker animated:YES];
NSLog(@"picker retaincount2 %i",[imagePicker retainCount]);
控制台输出的是
picker retaincount1 1
picker retaincount2 4
怎么变成4了呢?求大神解决
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这很正常,
presentModalViewController
这个方法会retain传给它的view controller参数,至于retain几次,跟它内部具体实现相关。开发者没必要关心这些,只要你保证自己主动调用的alloc和release相匹配就可以了,剩下的交给系统去处理。