关于百度地图截屏黑屏的解决方案

我一直相信技术再渣也能够有更好的更巧妙的想法来帮助我们解决面前的问题的,我们先运用各种思考的原则来逐步想开问题的本质,好了,这是我写的第一篇博客,回归正题。

最近在做一个关于地图的项目,客户要求说要完美的截屏,可是当我搜索了网上关于截屏的代码并使用了之后,发现地图是黑屏的,但是,百度地图自带也有截屏的方法,可是截屏出来的只有地图,我做的解决方案就是:

1.先布局一个和地图控件一样大的imageView,然后事先隐藏掉

2.用 mapView.snapshot(new SnapshotReadyCallback()) 的方法把整个地图截下来,然后利用里面的 void onSnapshotReady(Bitmap snapshot) 方法产生的 Bitmap 对象加载到imageview控件里,显示该控件,隐藏 mapView 控件,延后一点时间让第一个截图行为和加载到 imageView 的过程执行完毕,开始用android自带的截图方法(网上有很多,可以自己去搜一下),此时,截出来的就是我们想要的效果啦,记得把 imageView 隐藏,mapView 再次显示。实践证明,根本看不出来有什么变化,就得到了我们想要的结果!!

3最后,截图也是需要一定的时间的,什么时候隐藏比较好,有顺序先后,建议使用handler延后执行

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值