我发现这个线程符合我的问题:
Clicking a link in UIWebView pushes onto the NavigationView stack
但是,以下情况有所不同:
而不是使用navigationController,我使用基于视图的应用程序在按下相应的按钮时手动切换到不同的viewcontroller.
我使用onClick方法来检测用户何时点击UIWebView上的某些内容并尝试使用新的UIWebView打开新的ViewController,而不是使用链接.
相同的代码是否有效或者我必须进行一些更改?
解决方法
你将不得不做一些修改
第一名:
在onClick时,您必须将当前页面重定向到新位置
例如,这个位置将是MYLocation:// GoThere
第二:
更新shouldStartLoadWithRequest
-(BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType { NSURL *url = request.URL; NSString *urlString = url.absoluteString; //Check if special link if ( [ urlString isEqualToString: @"MYLocation://GoThere" ] ) { //Here present the new view controller MyViewController *controller = [[MyViewController alloc] init]; [self presentViewController:controller animated:YES]; return NO; } return YES; }