Ios 在UIWebView中加载不同页面时如何添加导航
我正在将本地.html文件加载到UIWebView中,如果用户单击.html文件中的链接或按钮,则会加载另一个页面,该页面可能是本地的,也可能是远程的。(我将这些直接加载到同一个UIWebView中,因此不会调用Safari) 如果加载了从第一个页面链接的页面,我希望显示导航栏并显示“后退”按钮,这样用户就可以导航回起始页面,就像在本机应用程序中查看网页一样。 实现这一目标的最佳方式是什么?是否可以使用本机构造而不是在页面本身中放置反向链接或JavaScript等Ios 在UIWebView中加载不同页面时如何添加导航,ios,Ios,我正在将本地.html文件加载到UIWebView中,如果用户单击.html文件中的链接或按钮,则会加载另一个页面,该页面可能是本地的,也可能是远程的。(我将这些直接加载到同一个UIWebView中,因此不会调用Safari) 如果加载了从第一个页面链接的页面,我希望显示导航栏并显示“后退”按钮,这样用户就可以导航回起始页面,就像在本机应用程序中查看网页一样。 实现这一目标的最佳方式是什么?是否可以使用本机构造而不是在页面本身中放置反向链接或JavaScript等 谢谢最好的方法是实施 – we
谢谢最好的方法是实施
– webView:shouldStartLoadWithRequest:navigationType:
这个。每当webview要发出请求时,就会调用此方法。所以现在当有人点击你网页上的一个按钮时,你会得到一个对这个方法的调用。接到这个电话后,你可以选择用它做任何你想做的事情。例如,通过您自己的服务器重定向链接,或将有关用户活动的请求记录到您的服务器等。在您的案例中,显示导航栏并激活“后退”按钮
示例-此处myMethodAction
是您希望放置导航栏外观逻辑的位置
- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType
{
if(navigationType == UIWebViewNavigationTypeLinkClicked)
{
if(overrideLinksSwitch.on == TRUE)
{
[self myMethodAction];
[myWebView stopLoading];
return YES;
}
else
{
return YES;
}
}
return YES;
}
希望这有助于…最好的方法是实施
– webView:shouldStartLoadWithRequest:navigationType:
这个。每当webview要发出请求时,就会调用此方法。所以现在当有人点击你网页上的一个按钮时,你会得到一个对这个方法的调用。接到这个电话后,你可以选择用它做任何你想做的事情。例如,通过您自己的服务器重定向链接,或将有关用户活动的请求记录到您的服务器等。在您的案例中,显示导航栏并激活“后退”按钮
示例-此处myMethodAction
是您希望放置导航栏外观逻辑的位置
- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType
{
if(navigationType == UIWebViewNavigationTypeLinkClicked)
{
if(overrideLinksSwitch.on == TRUE)
{
[self myMethodAction];
[myWebView stopLoading];
return YES;
}
else
{
return YES;
}
}
return YES;
}
希望这有助于