2013-02-27 117 views
0

我是iPhone開發新手,我有一個應用程序,我在其中插入一個HTML頁面(本地插入UIWebView)包含一個摘要,在這個頁面中有鏈接(href),當我點擊一個鏈接時它的內容是顯示在同一個UIWebView,但我想保留包含在第一個UIWebView在左邊的摘要的頁面,並在右側顯示鏈接的內容在一個新的UIWebView。我知道我讀的是我應該將方法shouldStartWithLoad:插入到delegate.m中,但我不知道如何在我的情況下使用此方法。如何從其他webview xcode中的UIwebview打開鏈接?

你能告訴我該怎麼做嗎?有沒有一個教程可以清楚地解釋這一點?

+0

http://www.iphonesdkarticles.com/2008/08/uiwebview-tutorial.html – 2013-02-27 12:36:08

+0

請不要使用代碼反引號強調非編wors如「HTML」。 – ThiefMaster 2013-02-27 13:00:03

+0

嗯,這是我的拳頭問題,我不擅長英語,謝謝你編輯它:) – user2043683 2013-02-27 13:45:32

回答

1

使用uiwebviewDelegate方法

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType; 

如果你選擇了[request.URL absoluteString],然後你可以根據網址讓你的邏輯。您需要然後返回NO。

順便說一句,UIWebView需要大量的內存,所以你應該保重。

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIWebViewDelegate_Protocol/Reference/Reference.html

+0

謝謝你回答,因爲我說我是iPhone的新手,所以我的問題可能是愚蠢的,但應我這樣做? : - (BOOL)web視圖:(的UIWebView *)webView的shouldStartLoadWithRequest:(的NSURLRequest *)inRequest navigationType:(UIWebViewNavigationType)法菜單{ \t如果(法菜單== UIWebViewNavigationTypeLinkClicked){ \t \t的NSString * CURRENTURL = [[[web視圖請求] URL] absoluteString]; \t \t \t [webView2的loadRequest:的NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[一個NSBundle mainBundle] pathForResource:@ 「CURRENTURL」 ofType:@ 「HTM」] isDirectory:NO]]]; \t \t return NO; \t} \t return YES;} – user2043683 2013-02-27 14:10:55

+0

是的(即使有點難以閱讀)。您應該檢查指定的URL([[webView request] URL])是否與您想要重定向的URL匹配,因爲您的所有鏈接都是UIWebViewNavigationTypeLinkClicked – 2013-02-27 18:05:05

+0

好的謝謝:)但它不起作用! – user2043683 2013-02-28 08:42:12

相關問題