Latest 0.0.1
Homepage https://github.com/speiyouiOS/XESWebView
License MIT
Platforms ios 7.0, requires ARC
Dependencies WebViewJavascriptBridge
Authors

XESWebView是什么

XESWebView是一个自定义的WebView,可以无缝的从UIWebView和WKWebview之间相互切换!

XESWebView有哪些功能

  • 支持手动、自动布局
  • 支持Objective-CJavaScript相互调用
  • 支持手动切换或者根据系统版本自动使用使用WKWebView或者UIWebView
  • 支持是否显示进度条
  • 跟系统API一致性(canGoBack goBack reload等)
  • 使用了WebViewJavascriptBridge

使用方法

初始化

//初始化
    XESWebView *newWebView = [[XESWebView alloc]initWithFrame:CGRectZero usingUIWebView:YES];

    XESWebView *newWebView = [[XESWebView alloc]initWithFrame:CGRectZero usingUIWebView:NO];

    XESWebView *newWebView = [[XESWebView alloc]init];

    newWebView.delegate = self;

请求


    [newWebView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"https://m.taobao.com"]]];
    [newWebView loadHTMLString:appHtml baseURL:baseURL];

JS<->OC调用


- (void)evaluateJavaScript:(NSString*)javaScriptString completionHandler:(void (^)(id, NSError*))completionHandler;

- (NSString*)stringByEvaluatingJavaScriptFromString:(NSString*)javaScriptString

- (void)addScriptMessageHandler:(id<WKScriptMessageHandler>)scriptMessageHandler name:(NSString*)name;

显示隐藏进度条

显示或者隐藏进度条,支持进度条加载进度条颜色设置。

//控制是否显示进度条   default  YES
@property (nonatomic) BOOL showProgressBar;

监听XESWebView加载进度

对XESWebView带的进度条不满意可以自己监听estimatedProgress属性 来获取XESWebView的加载进度。


    [self.webView addObserver:self forKeyPath:@"estimatedProgress" options:NSKeyValueObservingOptionNew context:nil];

针对使用WebViewJavascriptBridge

/**
 webviewJavaScriptBridge registerHandler
 @param handlerName 方法
 @param handler 回调
 */
- (void)registerHandler:(NSString*)handlerName handler:(XESWebViewHandler)handler;
/**
 webviewJavaScriptBridge callHandler
 @param handlerName 方法
 @param data 参数
 @param responseCallback 回调
 */
- (void)callHandler:(NSString*)handlerName data:(id)data responseCallback:(XESWebViewResponseCallback)responseCallback;

安装

CocoaPods (推荐)

1.在 Podfile 中添加 pod 'XESWebView'

2.执行 pod installpod update

3.导入 "XESWebView.h"

手动安装

1.下载 XESWebView 文件夹内的所有内容。

2.将 XESWebView 内的源文件添加(拖放)到你的工程。

3.需要添加 WebViewJavascriptBridge库。

3.导入 XESWebView.h

系统要求

该项目最低支持 iOS 7.0 和 Xcode 7.0。

Latest podspec

{
    "name": "XESWebView",
    "version": "0.0.1",
    "summary": "XESWebView is a useful WebViewuff01",
    "description": "XESWebView can seamlessly switch between UIWebView and WKWebView and easily tune in with iOS7",
    "homepage": "https://github.com/speiyouiOS/XESWebView",
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    },
    "authors": {
        "gfy": "[email protected]"
    },
    "platforms": {
        "ios": "7.0"
    },
    "source": {
        "git": "https://github.com/speiyouiOS/XESWebView.git",
        "tag": "0.0.1"
    },
    "source_files": "XESWebView/*.h",
    "public_header_files": "XESWebView/*.h",
    "vendored_libraries": "XESWebView/*.a",
    "requires_arc": true,
    "dependencies": {
        "WebViewJavascriptBridge": [
            "6.0.2"
        ]
    }
}

Pin It on Pinterest

Share This