2012-06-10 4 views
0

URL에서 이미지로드시 UIWebView 지연 문제가 있습니다.UIWebView에서 지연 시간이 있습니다. URL에서로드 이미지

NSBundle *thisBundle = [NSBundle mainBundle]; 
NSString *path = [thisBundle pathForResource:@"detail" ofType:@"html"]; 
NSString *html = [NSString stringWithContentsOfFile:path]; 
NSString *htmlString = [NSString stringWithFormat:html, imageURL]; 
[webView loadHTMLString:htmlString baseURL:nil]; 

내 detail.html 파일의 줄 하나 : 내 코드에서

는 로컬 HTML 파일로드 라인입니다

<img src="%@" height="100%" alt="…"></img> 

와 지금은 버튼을 누르고에 갈 때 UIWebView, 처음에는 흰색이며 몇 초 후에 이미지와 텍스트를 표시합니다. URL에서 이미지를로드하는 데 시간이 필요하다는 것을 알고 있지만 처음에는 텍스트를 표시하고 다음으로 이미지를로드 할 때까지 기다릴 수 있습니까 ??

일반적으로 I 생각 : 푸시 버튼 ->이

답변

0

, 내가 문제를 해결하기 위해 관리. <body> 섹션에

<script type="text/javascript"> 
    function loadImage(imageSource) { 
     document.getElementById("picture").src=imageSource; 
    } 
</script> 

다음 :

<img src="" style="border: none;" id="picture"> 

을 내 UIViewController에 옆 난 대리자 메서드를 추가했다 : 내 local.html 파일의 첫 번째

, 나는 <head> 섹션에 추가 된

- (void) webViewDidFinishLoad:(UIWebView *)web { 
    [webView stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"loadImage('http://example.com/image.jpg')"]]; 
} 
0

당신이 할 수있는 몇 가지가 있습니다 장전 쇼 이미지가 하나가 바로 아래에보기를 표시하는 것입니다 -> 표시 텍스트 ->UIWebView로 이동 텍스트를 표시하는 uiwebview. uiwebview의 알파를 0으로 설정하면 (투명하므로) uiwebview로드가 완료되었다는 알림을 받으면 애니메이션을 사용하여 페이드 인하 고 텍스트가 포함 된보기를 제거합니다.

WebViewDidFinishLoad :가 호출 될 때 UIWebView로드가 완료되면 알 수 있습니다. 이 같은 애니메이션 뭔가를

: 마틴 H의 도움으로

[UIView animateWithDuration:0.4 
       animations:^ { 
        self.webView.alpha = 1.0;       
       }]; 
+0

이론적으로는 설명 된 해결책이 있지만 계속 유지하고 싶습니다. 물론 UIWebView, 가능한 경우. – murzynpl

+0

그러면 자바 스크립트를 사용하여 웹뷰에 표시되는 내용과시기를 제어해야합니다. – Gruntcakes

+0

** Martin H, ** 자바 스크립트로이 작업을 수행하는 방법을 더 많이 작성할 수 있습니까 ?? – murzynpl

관련 문제