本文是对我之前看的csdn上一篇仿今日头条博客案例的简单实例,那个博客的案例代码比较多,有很多功能,在这里我附上简略过后的代码。特别感谢原作者的博客,从中学到了很多知识。
原博客为:http://blog.csdn.net/vipzjyno1/article/details/26514543。项目源码下载地址http://download.csdn.net/detail/vipzjyno1/7295005
还有另外一篇博客很好的解释了 原作者的Demo,特别详细,从三个角度分析了实现了拖动效果的过程
原博客地址为http://blog.csdn.net/chunqiuwei/article/details/41045743,其中作者很好的制作了图,
可以很好的理解移动过程中的坐标变化
下面先上这次原博客实现功能的效果图: 可长按拖动标签 右边是自己简化的,可拖动
1.开发前须知
1.了解重写View的相关知识,并且知道GridView的一些内部方法,如:怎么通过触摸的坐标获取对应的position等(这里我采用的是继承GridView控件)
2.了解屏幕触摸动作传递原理 这里我上面谈到的那篇博客很好的解释了过程
3.了解位移动画Animation,本DEMO中主要用到:TranslateAnimation 平移动画
4.了解WindowManager的窗口机制,这里的item拖拽等都要设计到这个。
5.BitMap的使用,悬浮窗口的使用
2.开发的思路
最后附上自己代码 (下载) 可拖动GridView ,不要积分。