我使用UIPickerViewController拍照。它工作80%,但看似随意,它没有拍照。在追踪代码时,我发现它偶尔会去iPhone:UIImagePickerController随机拍照失败
-PinRecordNewTableViewController:viewDidUnload.
这是失败的原因,因为它将nil设置为所有ivars。
@interface PinRecordNewTableViewController : UITableViewController {
}
...
@implementation PinRecordNewTableViewController
...
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
...
PinRecordNewPicture *pinRecordNewPicture = [[PinRecordNewPicture alloc] initWithNibName:@"PinRecordNewPicture" bundle:nil];
pinRecordNewPicture.delegate = self;
[self.navigationController pushViewController:pinRecordNewPicture animated:YES];
[pinRecordNewPicture release];
...
}
@interface PinRecordNewPicture : UIViewController
...
@implementation PinRecordNewPicture
...
- (void)picturePicker:(UIImagePickerControllerSourceType)theSource {
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.sourceType = theSource;
picker.allowsEditing = YES;
[self presentModalViewController:picker animated:YES];
[picker release];
}
- (IBAction) takePicture:(id)sender {
UIImagePickerControllerSourceType source = UIImagePickerControllerSourceTypeCamera;
if ([UIImagePickerController isSourceTypeAvailable:source]) {
[self picturePicker:source];
}
我做错了什么?我错过了什么导致它“随机”行为?
在此先感谢您的帮助。
这个问题很可能在'imagePickerController:didFinishPickingMediaWithInfo:'或'imagePickerControllerDidCancel:'你应该将该代码发布到你的答案。另外,更多的描述会有所帮助。当你无法拍照时,你看到了什么行为?它是否像它一样行动,但你没有存储图像?选取器控制器视图不显示?细节很重要。 – TechZen 2010-04-11 21:27:20