2012-01-24 12 views
0

私は現在、epubアプリケーションを開発中です。同期UIWebviewリクエスト

私は私のepub(html)をレンダリングするためにUIWebViewを使用します。 しかし、アニメーションの理由から、私は同期してリクエストをロードしたいと思います。

どうすればいいですか?

私はsendSynchronousRequestを使用しようとしましたが、成功しませんでした(私の要求はまだ非同期でした)。 http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSURLConnection_Class/Reference/Reference.html

答えて

2

UIWebViewがHTMLをレンダリングするときに発生する遅延が原因で、ユーザーに空白のページを表示したくない場合や、レンダリングされたページの数秒後にしか表示されない場合は、これに対処するためには、次のとおりです。

  1. が最初に隠されたUIWebViewました。

  2. webViewDidFinishLoadを定義すると、Webビューが表示されたときに表示されます。

あなたUIWebView contaningビューに入れ、このアプローチにそのalpha正しく、あなたが得ることができる素敵な遷移を定義する場合。

+0

私はそのようなトリックを作った、ありがとう – kevinooo

-1

私はあなたがこれでHTMLを文字列として取得することができると思う:

NSError * error; 
NSURL * url = [NSURL URLWithString:@"http://www.yoururl.com"]; 
NSString * htmlContent = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:&error]; 

と負荷のhtml:

[webView loadHTMLString:htmlContent baseURL:url]; 
+0

それでも動作しません。ほとんどの作業は同期的に行われますが、[webView loadHTMLString:htmlContent baseURL:url]では実行されません。 – kevinooo

0

同期の間でユーザーエクスペリエンスの観点で唯一の本当の違い前者の場合、ユーザーインターフェイスがフリーズすることが非同期です。したがって、それがあなたが望む効果であれば、要求を開始するときにのすべての属性をに設定し、要求が終了したらconnectionDidFinishLoading:に戻します。

関連する問題