首页 > 代码库 > 类似美图秀秀的自由拼图功能是怎么实现的?
类似美图秀秀的自由拼图功能是怎么实现的?
============问题描述============
重写imageview..但不晓得为何我重写后只能显示一张图片,其余的还是不显示?
============解决方案1============
不同格子的形式可以定义一个VIEW,最后把整个组合成一个IMAGE
============解决方案2============
其实全部功能都能在同一个View里完成,用一个ArrayList记录所有的图片及其相关信息(例如位置,旋转角度等,写一个队列去记录即可),onTouch事件每次Action_Down的时候检测点击位置是否有图片,如果有则把位于最上面的图片放到ArrayList的第一位置,接下来所有Action_Move事件全部只对第一位置的图片起作用(onDraw里按ArrayList的倒序画图片就行了,给最后一个画的图片加上Action_Move中的产生的位置、状态变化的参数),Action_UP的时候就重新记录第一位置图片变化后的信息
其中检测算法要你自己去想,因为图片旋转后4个点的位置就变了,怎么判断点击的地方有没有图片的一个角是个小难点,图片的放大缩小、移动、旋转全部在onDraw里用Matrix完成即可,最后生成图片如果跟预览图大小不同就乘个比例。
大致的思路就是这样,代码是公司的我不方便放,剩下算法、流程什么的LZ你自己思考一下就行了
类似美图秀秀的自由拼图功能是怎么实现的?
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。