2013-07-25 3 views
0

안녕하세요. 저 장치로 저장하지 않고 이미지를 캡처하는 것이 가능합니다.이 질문은 저를 걱정하고 있습니다.UIImagePickerController를 사용하여 장치에 저장하지 않고 이미지 캡처

어떤 방법으로 나에게 아이디어를 줄 수 있습니까?

+0

귀하의 질문이 너무 일반적입니다. 적어도 당신은 무엇을하고 있는지 설명 할 수 있습니까 (어떻게 이미지를 캡처합니까)? –

+0

'UIImagePickerController'로 사진을 찍을 때, 어딘가에 이미지를 저장하는 특정 코드를 작성하지 않으면 아무 것도 저장되지 않습니다. 당신의 관심사는 무엇입니까? – rmaddy

+0

내 영어가 언젠가는 나쁘다. @ Vitaly.S 미안. –

답변

2

는 네, 그것은 가능하다 :

- (void)takePhoto 
{ 
    UIImagePickerController * pc = [[UIImagePickerController alloc] init]; 
    pc.sourceType = UIImagePickerControllerSourceTypeCamera; 
    pc.delegate = self; 

    pc.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera]; 
    pc.allowsEditing = YES; 

    [self presentViewController:pc animated:YES completion:^{ 

    }]; 
} 

#pragma mark - UIImagePickerController Delegate 

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
{ 
    [picker dismissViewControllerAnimated:YES completion:^{ 
     UIImage * image = [info valueForKey:@"UIImagePickerControllerOriginalImage"]; 
     self.imageView.image = image; 
    }]; 
} 

편집 : 이미지를 저장하려면

단순히이 (캐시 디렉토리에 저장 정보를 원하시면 NSFileManager에 대한 사과 문서를에 볼 수 있습니다 방법 또는 다른 스택 오버 플로우 관련 질문이 있습니다.이 방법도 사용할 수 있지만 NSUserDefaults보다 더 좋습니다.

간단하게 (이메일, 공유 또는 API 업로드를 통해) 보내려는 경우 저장하지 않아도됩니다. 먼저. 위의 self.imageView.image 속성에있는 메모리 내 버전을 사용할 수 있습니다.

+0

도움을 주셔서 대단히 감사합니다. 여기에 작은 질문이 있습니다. 캡처 이미지를 보내려고합니다. nsuser deafaults 또는 nsdata에 저장하고 보내는 것이 좋습니다. 확인 메시지가 수신되면 해당 nsuser 기본값 또는 nsdata를 null로 설정합니다. –

관련 문제