1.Hybrid相关
在Hybird架构中,原生界面和web页面需要频繁的沟通,并且是双向的沟通。
原生代码可以构建JavaScript语句,交由webview进行执行,从而在web页面上实现需要的效果。
在web页面的js文件中,也可以调用原生的Objective-C方法,从而执行一些原生方法才能完成的操作。与此相关的库有WebViewJavascriptBridge以及JavaScriptCore,有需要的同学可以自行了解。
2.UIWebview的相关特性
webview的代理方法大家想必非常熟悉,我们可以在页面加载前、开始加载时、加载完成时以及失败时进行需要的操作。这里我们需要用到的是这一条代理方法:
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType;
webview根据它的返回结果来决定是否进行加载。
网友评论