自定义View解决一张图片不同位置点击事件

前言

文章首发于个人博客HuRuWo的技术小站,如果本文非vip用户无法完全浏览,可前往原文地址查看文章。

原文章地址Android热点地图点击

更多技术文章访问本人博客HuRuWo的技术小站,
包括 Electron从零开发 Android 逆向 app 微信数据抓取 抖音数据抓取 闲鱼数据抓取 小红书数据抓取 其他软件爬虫 等技术文章

需求发起

产品发来大概像这样的一张图,要求点击不同的位置进入不同的内部。
我以为他会切小图,通过拼接组合成如图的样子。结果被告知只有一张jpg图片,必须完成不同部位的点击事件。

自定义View解决一张图片不同位置点击事件_第1张图片

解决方法

经过搜索,发现以下几种方法
1.该图作为viewgroup背景,使用很多个透明的view盖上建筑。随后点击view的事件。
2.获得途中所有点击路径的path,通过path建立选择区域。(只能适合svg图片)
3.强行抠图,将建筑扣下来配合留下的部分组合成整图。
4.自定义view,通过点击的区域百分比判断点击的部分。但需要知道每个区域的范围。

综合考虑1需要大量view且适配不好,2不是svg图片,无法拿到path,3不适合,适配比1更差。最后选择4,这也是大多数人的选择。

你可能感兴趣的:(VIP文章)