2013-12-17 4 views
2

내 프로그램에이 코드가 있지만 프로그램이 충돌하는 것 같아서 이유를 파악할 수 없습니다.IOS 사진 라이브러리에서 UIWebView로 이미지를 어떻게로드합니까?

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
{ 
    //Get Image URL from Library 
    NSURL *urlPath = [info valueForKey:UIImagePickerControllerMediaURL]; 
    NSString *urlString = [urlPath absoluteString]; 
    NSLog(urlString); 

    NSURL *root = [[NSBundle mainBundle] bundleURL]; 
    NSString *html; 
    html = @"<img src='"; 
    html = [html stringByAppendingString:urlString]; 
    html = [html stringByAppendingString:@"' />"]; 
    [MemeCanvas loadHTMLString:html baseURL:root]; 

    [picker dismissViewControllerAnimated:YES completion:^{}]; 

} 

내가 html로 문자열로 자산 라이브러리 주소 (URLString는)를 추가 섹션 주위에 발생하는 것으로 보인다. 나는 이것이 문제를 일으키는 이유를 모른다.

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSCFConstantString stringByAppendingString:]: nil argument' 

도움을 주시면 감사하겠습니다.

미리 감사드립니다.

+1

NSLog (urlString);은 무엇을 인쇄합니까? – Maulik

+0

이유는 간단합니다. nil'String'을 추가하고 있습니다. –

+0

urlString은 아마도 nil이 될 것입니다. – Mathijs

답변

1

이 링크가 도움이됩니까? 이미지의 URL은 가져 오지 않지만 대신 이미지 개체를 가져올 것이라고 설명합니다.

UIImagePickerControllerMediaURL always nil for a photo

+0

감사합니다. 그러나 iOS 사진 라이브러리에서 선택한 항목이 동영상이 아닌 경우 이미지는 UIImage로 반환됩니다. 이 방법으로이 이미지를 사용하면 html 서식을 지정할 수 있습니다. 이게 가능하다고 생각하니? – X0r0N

+0

직접 할 수는 없습니다. webview는 본질적으로 웹 사이트에 대한 포인터이므로 이미지가 소스 문서에 살고 있기 때문에 웹 뷰에서 표시 할 소스 문서/파일에 이미지를 저장해야합니다. 이미지는 원본 문서에 저장되지 않으므로 웹보기에서 삽입 할 수 없습니다. 이미지를 웹 서비스 위치에 업로드 한 다음 해당 URL을 가져와야합니다. 이미지가 원본 문서에 포함되어있는 경우 이미지를 소스 문서에 삽입해야합니다. webview에 무엇을 표시 했습니까? –

+0

지금 웹보기에는 아무 것도 없습니다. 사진 라이브러리에서 표시 할 이미지를 얻으면 이미지 주위에 추가 서식을 추가 할 것입니다. 사진 라이브러리의 파일을 내 응용 프로그램의 로컬 디렉토리로 복사하는 솔루션 일 수 있습니다. 나는 이것을 달성 할 수있는 방법을 모색 할 것이다. 이것에 대한 안내는 감사하겠습니다. – X0r0N

0

난 당신이 문서 디렉토리에 이미지를 저장 한 후 웹보기에 표시해야 할 것 같아요.

+0

이 답변이나 의견입니까? 댓글처럼 보입니다. – Popeye

+0

이것은 해결책 일 수 있지만 어떻게 사진 라이브러리의 파일을 내 app 디렉토리로 복사 할 수 있습니까? – X0r0N

관련 문제