分享:通过Launcher里的WorkSpace完成桌面的3D转屏效果(有源码)
2012-06-30 15:54
211 查看
(http://www.eoeandroid.com/viewthread.php?tid=27079&extra=&page=1)大家复制起来研究太麻烦,要我上传附件,已经上传了,附件里面的改动比较大而且注释不那么详细了,
出于多效率的考虑,没有用多线程了。下面提到的问题也都已解决,有什么好的建议大家再提出来一起讨论。
Workspace.rar (11.97 KB)
/*
这个workspace可以看做一个整体,X坐标上的范围是0-960
它共有3页,每个页即为一个child,每个child里面都有很多单元格,单元格中可以放置shortcut,
active folder, widget,他们分别会横向纵向占用不同的单元格数。
通过使用ScrollTo(int,int)这个方法可以把workspace这个整体移动,来显示不同的页面
比如:
ScrollTo(0,0) 为第一页
ScrollTo(320,0) 为第二页
ScrollTo(640,0) 为第三页
如果有更多页
ScrollTo(640,0) 为第四页
ScrollTo(960,0) 为第五页
.
.
.
其实页面上的被添加了组件后,这些组件我们看不见,
但是你点击某些看不见的“空位置”也是可以进入。
比如我们在中间页的左上角添加了一个短信的shortcut,如果不调用
drawChild(canvas, getChildAt(1), drawingTime)或者绘制出来我们是
看不见这个icon的,但是点击屏幕左上角却可以进入短信。
流程:
1.得到3个页的bitmap,页面上一有变化就重新得到bitmap
2.拖动屏幕时让屏幕不滑动也不按原始方式换页,而进行相应
的两个bitmap的变换操作来达到3D效果(不用GL,这样可以更有效率)
3.通过拖动的起始和结束坐标判断是否换页,应该如何换页
4.由于使用drawChild()把icon画到页上的时候,在进行2个bitmap的变换达到3D效果时
图像会出现从叠,故没有使用它,而是使用Canvas.drawBitmap()把相应bitmap张贴到
相应的页上,这样可以我们就可以知道屏幕的何处有何应用图标了
背景还没做好,准备搞个全黑,转的时候的3个Bitmap的背景搞成桌面背景,这样用户
还可以更换,3D效果有了,但需要改善
希望大家把自己的研究成果都分享出来,大家共同学习,共同进步
出于多效率的考虑,没有用多线程了。下面提到的问题也都已解决,有什么好的建议大家再提出来一起讨论。
Workspace.rar (11.97 KB)
/*
这个workspace可以看做一个整体,X坐标上的范围是0-960
它共有3页,每个页即为一个child,每个child里面都有很多单元格,单元格中可以放置shortcut,
active folder, widget,他们分别会横向纵向占用不同的单元格数。
通过使用ScrollTo(int,int)这个方法可以把workspace这个整体移动,来显示不同的页面
比如:
ScrollTo(0,0) 为第一页
ScrollTo(320,0) 为第二页
ScrollTo(640,0) 为第三页
如果有更多页
ScrollTo(640,0) 为第四页
ScrollTo(960,0) 为第五页
.
.
.
其实页面上的被添加了组件后,这些组件我们看不见,
但是你点击某些看不见的“空位置”也是可以进入。
比如我们在中间页的左上角添加了一个短信的shortcut,如果不调用
drawChild(canvas, getChildAt(1), drawingTime)或者绘制出来我们是
看不见这个icon的,但是点击屏幕左上角却可以进入短信。
流程:
1.得到3个页的bitmap,页面上一有变化就重新得到bitmap
2.拖动屏幕时让屏幕不滑动也不按原始方式换页,而进行相应
的两个bitmap的变换操作来达到3D效果(不用GL,这样可以更有效率)
3.通过拖动的起始和结束坐标判断是否换页,应该如何换页
4.由于使用drawChild()把icon画到页上的时候,在进行2个bitmap的变换达到3D效果时
图像会出现从叠,故没有使用它,而是使用Canvas.drawBitmap()把相应bitmap张贴到
相应的页上,这样可以我们就可以知道屏幕的何处有何应用图标了
背景还没做好,准备搞个全黑,转的时候的3个Bitmap的背景搞成桌面背景,这样用户
还可以更换,3D效果有了,但需要改善
希望大家把自己的研究成果都分享出来,大家共同学习,共同进步
相关文章推荐
- 分享:通过Launcher里的WorkSpace完成桌面的3D转屏效果(有源码)
- 通过Launcher里的WorkSpace完成桌面的3D转屏效果(有源码)
- 通过Launcher里的WorkSpace完成桌面的3D转屏效果
- ios开发学习-弹出视图(Popup View) 效果源码分享--系列教程2
- 词Ci首页效果实现介绍及源码分享
- ios开发学习--cocos2d(cocos2d)效果源码分享--系列教程
- Android 如何在Launcher的桌面滑动时添加动画效果? M
- 定制你自己的android手机桌面Launcher===一个完成Launcher开发的介绍 (第二篇)
- [c#源码分享]客户端程序通过TCP通信传送"小文件"到服务器
- 3D语音天气球(源码分享)——通过天气服务动态创建3D球
- 如何编译运行系统自带桌面Launcher2源码
- 安卓源码--Launcher2去除两边阴影效果
- 一个效果很华丽的仿桌面APP,却胜似Launcher
- AndroidWidget 桌面小控件 ; 完成效果 : 桌面展示 : xx年 xx月 xx日 xx时 xx分 xx秒
- ios开发学习--动画(Animation)效果源码分享--系列教程1
- Android 拆解Launcher中的WorkSpace实现左右滑动效果
- 说说Android桌面(Launcher应用)背后的故事(四)——揭秘Workspace
- ios开发学习-弹出视图(Popup View) 效果源码分享--系列教程2
- (1)Android 4.4 Launcher3桌面源码分析
- 3D语音天气球(源码分享)——通过天气服务动态创建3D球