从原生页面的一个按钮,点击以后跳转到了一个H5的页面A,A页面中又有一个按钮,点击以后,又加载了一个新的H5页面B,从B点击一个按钮,又加载一个新的H5页面C,若是此时咱们点击左上角的返回按钮,会直接返回到咱们的原生页面;那怎样作到点页面C左上角的返回按钮返回到页面B,点页面B左上角的返回按钮返回到页面A,就是每次点击返回按钮都返回到当前页面的上一级页面呢??web
从新定制返回按钮,从C页面判断是否还有上一级H5页面可供返回,若是有上一级页面仍是H5,点击左上角的返回则返回到B页面,同时在B页面的左上角加上一个关闭按钮,这个关闭按钮的做用主要是为了关闭全部的H5的页面,直接返回到原生的页面;若是不点击关闭按钮,仍是点击返回,则从B页面返回到A页面;再次点击返回,则关闭了H5的页面,回到了原生的页面;code
/** 返回按钮点击方法实现 */ - (void)backButAction{ //判断当前页面的上一级页面是不是WebView if ([self.webView canGoBack]) { //返回上一级h5页面 }else{ //返回原生页面 } }
[self.webView goBack];
/** 关闭WebView,返回到原生界面 */ - (void)closeWebView{ [self.navigationController popViewControllerAnimated:YES]; }
源码:源码