Android Laucnher3 拖拽应用图标阴影投放位置
来源:互联网 发布:mysql索引类型 编辑:程序博客网 时间:2024/06/05 00:41
要想实现拖拽拖到到任何地方,阴影都投放在Workspace中,只需修改Workspace方法中的onDragOver方法,该方法在拖拽中会不断调用。
通过下面的代码可以看到,当判断用户拖拽图标到hostseat位置中,我们把图标阴影投放在workspace上。
//确定我们是否拖过了侧页 if (workspaceInModalState()) { if (mLauncher.getHotseat() != null && !isExternalDragWidget(d)) { if (isPointInSelfOverHotseat(d.x, d.y, r)) { layout = mLauncher.getHotseat().getLayout(); } } if (layout == null) { layout = findMatchingPageForDragOver(d.dragView, d.x, d.y, false); } if (layout != mDragTargetLayout) { setCurrentDropLayout(layout); setCurrentDragOverlappingLayout(layout); boolean isInSpringLoadedMode = (mState == State.SPRING_LOADED); if (isInSpringLoadedMode) { if (mLauncher.isHotseatLayout(layout)) { mSpringLoadedDragController.cancel(); } else { mSpringLoadedDragController.setAlarm(mDragTargetLayout); } } } } else { // Test to see if we are over the hotseat otherwise just use the current page //测试我们是否在hotseat否则只使用当前页 /** * 修改这里,如果用户把图标拉到hotseat区域也把图标投放到workspace */ if (mLauncher.getHotseat() != null && !isDragWidget(d)) { if (isPointInSelfOverHotseat(d.x, d.y, r)) {// layout = mLauncher.getHotseat().getLayout(); layout = getCurrentDropLayout(); } } if (layout == null) { layout = getCurrentDropLayout(); } if (layout != mDragTargetLayout) { setCurrentDropLayout(layout); setCurrentDragOverlappingLayout(layout); } }
阅读全文
0 0
- Android Laucnher3 拖拽应用图标阴影投放位置
- 修改Laucnher3桌面应用名字
- Android Launcher3安装应用后,控制应用图标显示位置
- Laucnher3如何实现给hotseat上的应用显示title
- Android应用中实现拖拽排序及添加阴影的方式
- android应用图标大小
- 隐藏android应用图标
- Android应用图标设计
- Android应用图标规范
- android应用隐藏图标
- Android应用图标更改
- android 隐应用图标
- android 应用图标大小
- Android 制作应用图标
- Android隐藏应用图标
- Android 应用图标
- Android应用图标替换
- Android应用图标
- 实用的股票指标公式
- mybatis处理枚举类型
- 蒲公英VPN组网搭建管家婆服务器教程
- 数据结构实验之栈七:出栈序列判定(顺序栈)
- 编写方法根据指定的整数,判断其是否是闰年
- Android Laucnher3 拖拽应用图标阴影投放位置
- ETCD 简介 + 使用
- Servlet及其生命周期
- C语言动态顺序表
- kindle读书笔记——2017.06.22-2017.07.21
- 为Oraclespatial表添加记录和创建空间索引
- 全屏旋转动画
- leetcode --58. Length of Last Word
- 苹果党福利!手机数据备份恢复使用攻略