2014-01-06 64 views
1

我在寫一個Cocoa應用程序,我想在Webkit視圖中顯示一些數據。數據是我在內部生成的HTML。不過,它來自一個緩慢的計算,所以我要建立一個緩衝區(現在在GCD隊列中)。如何將數據流式傳輸到WebView/WebFrame?

WebFrame具有-loadRequest(URL),它是異步的,並且像-loadHTMLString(字符串)一堆方法和-loadData(原始字節),它是同步的。有沒有辦法異步加載本地HTML流?我是否需要設置自己的Web服務器才能將數據流發送到此視圖?

+1

以下是一個想法:使用一些基本的HTML加載web視圖,其中包含javascript以基本維護已經計算的HTML數組。在javascript中,每隔x秒輪詢一次,如果有新的HTML數據,則顯示它。在Obj C中,每當有新數據時,使用UIWebView的'stringByEvaluatingJavaScriptFromString:'將新數據追加到數組中。 – Linuxios

+0

這是一個有趣的想法!這並不理想,但它聽起來似乎合理。 – user241221

+0

iOS的webview並不擅長這些更復雜的事情。 – Linuxios

回答

0

子類NSURLProtocol。使用自定義協議處理程序,您可以將WebFrame指向自定義NSURL(如「myproto:// foo/bar」),然後編寫一個處理「myproto」URL的處理程序並將其發送到任何字節流中喜歡。

相關問題