我有一個帶uiwebvew的ViewController。這被稱爲顯示webcontents。在同一個ViewController的另一個實例中加載url鏈接
我的問題是,如果webcontent有鏈接,我想在同一個ViewController的另一個實例中顯示該鏈接頁面。
到目前爲止我無法這樣做。我想我在這裏錯過了一些東西。
任何人都可以在這裏指出我的問題。
在此先感謝。
-(BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType {
if (navigationType == UIWebViewNavigationTypeLinkClicked) {
PageDetailsViewController *pdvc = [self.storyboard instantiateViewControllerWithIdentifier:@"PageDetails"];
NSURL *websiteUrl = [NSURL URLWithString:@"http://www.google.com"];
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:websiteUrl];
[pdvc.webview loadRequest:urlRequest];
[self.navigationController pushViewController:pdvc animated:YES];
return NO;
}
return YES;
當我嘗試在相同的viewcontroller加載,它很好加載。所以,我的猜測是,我的webview委託或導航控制器可能有問題。
任何想法??
你正在推相同的viewcontroller? –
當你做'PageDetailsViewController * pdvc = [self.storyboard instantiateViewControllerWithIdentifier:@「PageDetails」];'這,你正在創建一個新的對象實例。你不推動「相同」的視圖控制器。這與操作系統不一樣,因爲它是內存中的一個不同的對象。你有什麼是同一個對象的兩個不同的實例。我會在這裏參考@ rdelmar的建議。給這個View Controller添加一個'NSURL *'屬性,讓它處理在它的UIWebView中加載這個url。 – dezinezync
好的,謝謝大家......我現在要爲此使用不同的視圖控制器。 – user3804063