您的位置:首页 > 移动开发

iOS中UIScrollView、UIWebView、UICollectionView实现图文混排

2018-03-01 15:07 429 查看
问题汇总1、如何实现JavaScript与Objective-C间传值?点击Webview中的图片,放大,需要JavaScript和Objective-C传值,获取到具体需要放大哪张图片。本方案中,不需要引入WebViewJavascriptBridge,而是通过【控制Webview重定向方法,拦截发出的请求】来实现。示例:
2、如何实现UIWebView高度自适应?UIWebView自适应高度的方案有很多,选择一个较为科学的方式,显得尤为重要。本方案中,通过【KVO监听Webview的contentSize】来实现,需要注意KVO的添加、移除,稍有不慎有Crash风险。示例:
3、如何实现UIWebView显示webp格式图片?UIWebView、WKWebview本身都不支持webp格式图片,需要额外扩展。示例:
4、如何实现图文混排 + UIKit组件?使用UIWebView加载自定义HTML代码的方式,实现图文混排。点击图片,放大,function()跳转链接,携带selectIndex标识,通过拦截UIWebView的请求来获取selectIndex标识。通过KVO获取到WebView高度,重新设置webView.frame,collectionView.frame,scrollView.contentSize本方案中,图文混排+UIKit组件,具体逻辑如下:5、如何自定义HTML代码?本方案中,以纯图片为例,处理后的HTML如下:
6、如何实现并发执行多个网络请求,统一处理?本方案中,利用GCD创建队列组,提交多个任务到队列组,多个任务同时执行,监听队列组执行完毕,在主线程刷新UI。注意: dispatch_group_enter() 、 dispatch_group_leave()将队列组中的任务未执行完毕的任务数目加减1(两个函数要配合使用)示例:
图文混排——核心目录结构实现代理方法,放大图片,跳转商品,置顶。实现针对showjoy.com域名,图片url拼接.webp。实现UIScrollView作为根容器,自适应内容高度。实现UIWebView支持webp格式图片。实现自定义HTML代码,图片居中,window.location.href事件传递selectIndex,UIWebView代理拦截selectIndex。通过HTML,JavaScript,还可以实现更多功能。。。。。。ProductLoadMorePicTextView.h
ProductLoadMorePicTextView.m
图文混排——使用ProductLoadMoreViewController中,保证两个接口都请求完成后,刷新ProductLoadMorePicTextView。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息