写道
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事件。
6
onTouchEvent():重写了父类的onTouchEvent();主要功能是处理onInterceptTouchEvent()返回值为true时传递过来的touch事件。
7
1)用xy记录鼠标移动时的坐标值;
mLastMotionX和mLastMotionY记录了上次鼠标按下时的XY值,在ACTION_MOVE中赋值;
2) xDiff和yDiff记录xy与mLastMotionX、mLastMotionY差值的绝对值;
touchSlop为系统定义的标准值,初值为16;
3) 当xDiff和yDiff大于touchSlop时就认为界面拖动了足够大的距离,屏幕就可以移动了;
4)当onInterceptTouchEvent()返回true时进入onTouchEvent()
分享到:
相关推荐
workspace.code-workspace
workspace
Citrix Workspace卸载工具 解决windows7、windows10、windows11无法卸载receiver、workspace客户端等问题
01 H3C Workspace云桌面 业务快速部署指导 02 H3C Workspace云桌面 安装指导 03 H3C Workspace云桌面开局指导书 04 H3C Workspace云桌面 vGPU配置指导 05 H3C Workspace云桌面 云盘配置与使用指导 06 H3C ...
Android workspace
01 H3C Workspace管理员运维手册 02 H3C Workspace云桌面 安全管理指南 03 H3C Workspace云桌面 动态桌面池典型配置举例 04 H3C Workspace云桌面 静态桌面池典型配置举例 05 H3C Workspace云桌面 手工桌面池典型...
workspace2
java web workspace 02
workspace_android.rar workspace_android.rar workspace_android.rar
01 H3C Workspace管理员运维手册 02 H3C Workspace云桌面 Linux桌面镜像配置指导(办公场景) 03 H3C Workspace云桌面 vGPU配置指导(办公场景) 04 H3C Workspace云桌面 安全管理配置指导 05 H3C Workspace云桌面 ...
Android 拆解Launcher中的WorkSpace实现左右滑动效果
Horizon_Workspace快速部署指南
HOW TO create the WebGoat workspace
scientific workspace 入门