关于UIWebView与WKWebView界面返回的处理

IOS开发过程中,我们无可避免的会与HTML5的界面做交互,如果H5界面里面有按钮,点击之后跳转到下一个界面之后,关于此时返回的问题(WKWebView与UIWebView的基本类似,以下以UIWebView为例来解释)

一、如果H5首界面导航条上边没有返回按钮时

1、第一步我们可以在H5界面跳转到下一个界面de时候添加一个返回按钮

因为还是当前viewControll,不能再viewDidLoad等等这些方法里面写,因为H5界面跳转的时候这些方法都没有走,

不过我们可以写在webView的代理方法里面,比如

- (void)webViewDidStartLoad:(UIWebView *)webView;//开始加载,建议使用这个,防止加载失败

- (void)webViewDidFinishLoad:(UIWebView *)webView;//加载完成

判断当前H5界面是否可以返回的方法是

[self.webView canGoBack];

因此我们就可以,根据判断是否在导航条左上边添加返回按钮了

2、在返回按钮的点击方法里面

我们可以根据[self.webView canGoBack];的判断,来做处理

3、webView里面H5的界面的返回上一个界面的方法是

[self.webView goBack];

二、如果H5首页导航条上边有返回按钮,添加一个关闭按钮时

1、第一步在webView的代理方法里面根据[self.webView canGoBack];判断当前H5界面是否可以返回

可以的时候添加一个关闭按钮,不可以的话不添加

2、在返回按钮的方法里面根据[self.webView canGoBack];判断,可以返回时,就走[self.webView goBack];

不能返回就走[self.navigationController popViewControllerAnimated:YES];

3、在关闭按钮的方法里面走

[self.navigationController popViewControllerAnimated:YES];

你可能感兴趣的:(关于UIWebView与WKWebView界面返回的处理)