`

launcher中Workspace类大致分析

UP 
阅读更多
在Workspace.Java类实现,相关方法有:
1) computeScroll():重写了父类的computeScroll();主要功能是计算拖动的位移量、更新背景、设置要显示的屏幕(setCurrentScreen(mCurrentScreen);)。
2) dispatchDraw():重写了父类的dispatchDraw();主要功能是判断抽屉是否打开、绘制指定的屏幕,可以绘制当前一屏,也可以绘制当前屏幕和下一屏幕,也可以绘制所有的屏幕,这儿的绘制指显示屏幕上的child(例如:app、folder、Wiget)。和computeScroll()中的setCurrentScreen(mCurrentScreen);方法配合使用可以实现屏幕的拖动多少显示多少的功能。
3) onMeasure():重写了父类的onMeasure();主要功能是设置屏幕的显示大小。由每个child的measure()方法设置。
4) onLayout():重写了父类的onLayout();主要功能是设置屏幕的显示位置。由child的layout()方法设置。
5) onInterceptTouchEvent():重写了父类的onInterceptTouchEvent();主要功能是在onTouchEvent()方法之前处理touch事件。包括:down、up、move事件。
 用xy记录鼠标移动时的坐标值;
 mLastMotionX和mLastMotionY记录了上次鼠标按下时的XY值,在ACTION_MOVE中赋值;
 xDiff和yDiff记录xy与mLastMotionX、mLastMotionY差值的绝对值;
 touchSlop为系统定义的标准值,初值为16;
 当xDiff和yDiff大于touchSlop时就认为界面拖动了足够大的距离,屏幕就可以移动了;
 当onInterceptTouchEvent()返回true时进入onTouchEvent()。
6) onTouchEvent():重写了父类的onTouchEvent();主要功能是处理onInterceptTouchEvent()返回值为true时传递过来的touch事件。
3
0
分享到:
评论
1 楼 woshiguotao 2011-07-08  



l;


相关推荐

    launcher中workspace代码

    android源代码 http://blog.csdn.net/aomandeshangxiao/article/details/6940670#reply讲解所用部分

    仿照Launcher的Workspace实现左右滑动切换

    仿照Launcher的Workspace实现左右滑动切换,学习用不错!

    拆解Launcher中的WorkSpace实现左右滑动效果

    Android 拆解Launcher中的WorkSpace实现左右滑动效果

    Launcher_default_workspace

    之前在Launcher上添加应用或者窗口小部件,需要找到包名和类名,以及位置等,然后手动在代码中添加。 现在只需要在桌面上拖动添加,然后运行该程序,就会生成当前桌面应用和窗口小部件的布局文件,保存在/mnt/sdcard...

    Launcher Workspace Demo

    为了访问因此成员,需要改变类搜索顺序,选择项目属性->Java Build Path->Order and Export,把所建立的User Libraries移到Android SDK的上面。 3 编译运行。如果发现myEclipse因内存小编译不了,修改myeclipse.ini...

    Android_launcher源码全面分析

    一 Launcher默认界面配置(default workspace) 2 1 界面默认配置文件 2 2 LauncherProvider java的loadFavorites分析 3 二 Icon修改 界面布局调整 壁纸设置 5 1 图标大小和标题大小 5 2 Launcher 图标加入默认背景 ...

    Android 9.0 Launcher Workspace 加载

    加载Workspace入口在/packages/apps/Launcher3/src/com/android/launcher3/model/LoaderTask.java,想了解Launcher app的启动流程,可以先看看这篇文章,https://www.jianshu.com/p/0b273112cd7e 1、Workspace加载...

    Laucher 循环滑动workspace代码修改

    根据gmailToyou大虾的指点,我修改了workspace的代码,已经成功实现了Launcher的循环滑动,这里将代码共享,以供参考,特别感谢gmailToyou的帮助!

    Workspace Launcher-crx插件

    您可以通过单击Chrome窗口右上角的Workspace Launcher图标,轻松保存在当前窗口中打开的标签页。 也可以从Workspace Launcher界面本身创建工作区。 创建用于以下目的的工作空间:-一天开始访问的典型网站-特定工作...

    android2.3 launcher分析

    android2.3 launcher分析

    Launcher2源码分析

    桌面快捷图标的拖拽. Workspace切换AllApps流程 Workspace滑动. Launcher内容加载详细过程.

    launcher启动流程类图

    介绍了launcher启动时各个类之间的调用次序。

    Android-launcher源码全面分析

    一 Launcher默认界面配置(default workspace) 2 1 界面默认配置文件 2 2 LauncherProvider java的loadFavorites分析 3 二 Icon修改 界面布局调整 壁纸设置 5 1 图标大小和标题大小 5 2 Launcher 图标加入默认背景 ...

    Android Launcher抽屉类SlidingDrawer的使用

    SlidingDrawer隐藏屏外的内容,并允许用户通过handle以显示隐藏内容。该demo演示了SlidingDrawer应用及效果。

    android Launcher2文件夾功能分析

    android的launcher是一款非常强大的系统应用,值得去好好的研究一番,这里对 Launcher2文件夾功能作详细的分析介绍。

    Android代码-Launcher3

    Launcher3中的常用类 Launcher3的启动流程(一) 细说ItemInfo Launcher3的启动流程(二) Launcher3分析之拖动图标的流程——按下 Launcher3分析之拖动图标的流程——移动 Launcher3分析之拖动图标的流程——放下 ...

    android2.3 launcher分析三

    android2.3 launcher分析三

    launcher源码分析

    android launcher 源码分析,不错的源码资料,分享给大家

    提取Launcher中的WorkSapce,可以左右滑动切换屏幕页面的类

    提取Launcher中的WorkSapce,可以左右滑动切换屏幕页面的类,相应的源码说明可以参考文章:http://blog.csdn.net/Yao_GUET/archive/2011/05/04/6393962.aspx

    Launcher3原理及二次开发

    此资源是在安卓巴士交会上王鹏工程师分享的Launcher3的原理及二次开发pdf。文中介绍啦Launcher3的框架和主要流程,能给从事Lauuncher3开发和桌面定制的开发人员启迪。特此分享出来。

Global site tag (gtag.js) - Google Analytics