概述: 上个月产品提出的需求,第一反应是各种百度,查资料,窥视其它应用是使用什么方法实现该功能。于是就看到简书有实现长图分享的功能。
在实现功能时,有查看一些资料。反手就是一链接 http://blog.csdn.net/duanyy1990/article/details/72552965#comments 自我感觉该作者写的心得很赞。可以参考
1.对原生界面进行截长图进行分享
遇到的坑: 1.如果当前的列表有展示图片的控件,生成的长图某些部分会出现占位符的情况。从而导致图片并不完整。
反手就是一张图片 2.在对RecycleView列表进行长截图的过程中会有两个坑第一个就是,当你当前的item视图超出了屏幕的范围,这个时候截图是null的。导致长图保存之后是缺损的,这个你可以自行测试。
2.对WebView进行长截图分享
Webview可以解决 原生界面长截图导致图片不完整的问题。因为可以对Webview进行是否加载完毕的判断,加载完毕之后再来进行长截图操作。这样生成的长图就不会是上图那样不完整。
遇到的坑: 1.需要前端配合,给出与需要原生界面相同的网页链接。2.在生成图片过程中由于webview网页过于太长,导致生成的图片太大,从而生成失败。3.通过微信好友分享出去的长图,自己看的图片会感觉到非常模糊,跟马赛克一样。原因是友盟分享的过程中对图片进行了大力压缩。
解决方案:1.就不用多说了,前端配合。2.出现这种情况就是对图片进行压缩,或者给出提示文章过长生成失败。别问为什么,《简书APP》好像就是这么处理的。3.微信好友进行分享的时候,我们需要调用系统的分享。这样分享的时候会将一整张图片都发送过去,就不出现被压缩的现象。就不会有马赛克的效果了。有一点就是图片下方没有了应用的Logo与名称。这个就看你们产品怎么要求了。
共同学习,写下你的评论
评论加载中...
作者其他优质文章