项目介绍:
SDWebView组件 是针对WKWebView进行的深度封装、支持和H5交互、包括调用js方法等。挺全面的!真的。其他针对WKWebView封装的就不要看了。
SDPhotoBrowserd组件 是一个图片浏览器,创建简单易用,可以复制demo中的代码。
demo是使用SDWebView加载的图片页面,然后使用SDPhotoBrowserd进行图片预览,磨砂的背景比普通黑色耐看!需要用到WKWebView中图片预览的这个demo就在合适不过了!
以下是部分属性: 使用SDWebView可以在imgSrcArray中获得所有web页面的图片链接。
demo较大可以点击下方链接下载:如果能帮到你,记得给我个星星啊!
点我下载)
/**
需要加载的urlStr
*/
@property (nonatomic, copy) NSString *URLString;
/**
web页面中的图片链接数组
*/
@property (nonatomic, strong) NSMutableArray *imgSrcArray;
/**
进度条
*/
@property (strong, nonatomic) UIProgressView *progressView;
/**
webView的标题、如果navigationItemTitle需要和webView保持一致、直接getter方法即可
*/
@property (nonatomic, copy) NSString *webViewtitle;
/**
注入H5页面的交互模型
*/
@property (nonatomic, strong) NSArray<NSString *> *jsHandlers;
/**
是否显示加载的HTML页面源码 default NO
*/
@property (nonatomic, assign) BOOL displayHTML;
/**
是否显示加载的HTML页面中的cookie default NO
*/
@property (nonatomic, assign) BOOL displayCookies;
/**
每次跳转是否需要打印跳转的URL default YES
*/
@property (nonatomic, assign) BOOL displayURL;
/**
获取交互的参数代理
*/
@property (nonatomic, weak) id<SDWebViewDelegate> delegate;
/**
根据URL初始化
@param urlString URLString
@return WebviewVc实例
*/
- (instancetype)initWithURLString:(NSString *)urlString;
/**
* 加载本地HTML页面
*
* @param htmlName html页面文件名称
*/
- (void)loadLocalHTMLWithFileName:(nonnull NSString *)htmlName;
/**
移除jsHandler
*/
- (void)removejsHandlers;
/**
清除所有cookie
*/
- (void)removeCookies;
/**
清除指定域名中的cookie
@param cookieName 域名
*/
- (void)removeCookieWithHostName:(NSString *)hostName;
/**
* 调用JS方法(无返回值)
*
* @param jsMethod JS方法名称
*/
- (void)callJS:(nonnull NSString *)jsMethodName;
/**
* 调用JS方法(可处理返回值)
*
* @param jsMethod JS方法名称
* @param handler 回调block
*/
- (void)callJavaScript:(nonnull NSString *)jsMethodName handler:(nullable void(^)(__nullable id response))handler;
github地址:
https://github.com/giveMeHug/SDWebView