1.概述
在10.0的产品定制化开发中,在laucher3中拖拽item时 靠近某个图标时会形成文件夹(folder),而根据客户需求不想再hotseat形成文件夹, 这就要从workspace.java从来寻找解决方案了
2.Launcher3 禁止在HotSeat创建文件夹的核心类
/packages/apps/Launcher3/src/com/android/launcher3/Workspace.java
3.Launcher3 禁止在HotSeat创建文件夹的核心功能分析和实现
功能分析:
Launcher3中形成文件夹,是在Workspace.java中的 onDrop()方法里面实现的,拖动图标落点处可以合成一个Folder,如果不满足文件夹的条件,则调用CellLayout.java的performReorder方法
createUserFolderIfNecessary()方法
接下来看下createUserFolderIfNecessary()方法的相关源码
boolean createUserFolderIfNecessary(View newView, long container, CellLayout target,
int[] targetCell, float distance, bo