2013-02-01 94 views

回答

0

他們是真的沒有任何 「技術」 的方式更快地加載網頁視圖,但我會建議你使用:

加載請求URL

加載請求URL代碼:

@interface WebViewController : UIViewController { 

IBOutlet UIWebView *webView; 
} 

@property (nonatomic, retain) UIWebView *webView; 

@end 

//////////////////////////////////////////// ////////////////////////////////////////////////// ////////////// ////////////////////////////////////////////////// ///////

- (void)viewDidLoad { 

NSString *urlAddress = @"http://www.google.com"; 

//Create a URL object. 
NSURL *url = [NSURL URLWithString:urlAddress]; 

//URL Request Object 
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; 

//Load the request in the UIWebView. 
[webView loadRequest:requestObj]; 

} 
+0

嗨iProgrammed,是有什麼方法可以在加載請求URL方法中加載速度更快(一兩秒也OK):? – Chan

+0

我什麼也沒有,但你的設備的網絡速度應該有助於使URL更快加載幾秒鐘。 – iProgrammed

1

網絡請求需要時間。試圖優化這種類型的代碼幾毫秒毫無意義。編寫最易讀/可維護的代碼,它將爲您提供更好的服務。

您可以將網頁,腳本,css和圖像放入應用程序包中;得到一個指向它的URL(file:// ...)並使用它。在您的網頁中,您可以使用AJAX獲取一些動態數據等。

這將是一條更好的優化路徑;但這一切都取決於你的情況。

如果您可以選擇使用loadRequest,我會推薦它。讓操作系統把你的工作從你的手中拿走。

編輯: PS:UIWebView往往需要時間來顯示數據;即使沒有網絡參與。 我經常在web或viewDidLoad中將webview的alpha設置爲0;然後在內容準備就緒時淡入。

裏面你webViewDidFinishLoad:方法,補充一點:

if (0.0f == webview.alpha) { 
    [UIView animateWithDuration:0.4f 
        animations:^{ 
         webview.alpha = 1.0f; 
        }]; 
}