现在市面上大多数手机的桌面文件夹都是类似ios那样的风格,将内部包含的app缩略展示在icon图标上;但是Google原生的文件夹风格是圆形背景,app以45度角向外叠起来的。据说Android早期版本也是ios那样的,后来被苹果告侵权才改的。不管怎么说,我个人还是觉得缩略图展示是比较好的,方便查看内部包含的app。正好这段时间比较闲,就来改的玩玩。
以下只是对Launcher3中Folder的源码作了分析,看懂了源码,想要改风格是非常容易的。
Folder的创建起源于Workspace.java的onDrop回调,每次onDrop都需要判断是否需要创建文件夹。添加文件夹时,首先要将targetCell位置的app从CellLayout中移除,然后再调用Launcher.java的addFolder,将创建好的FolderIcon添加回targetCell这个位置;最后清除放入文件夹的两个app的坐标(因为他们被移出了workspace),并将这两个app添加到FolderIcon中。
boolean createUserFolderIfNecessary(View newView, long container, CellLayout target,
int[] targetCell, float distance, boolean external, DragView dragView,
Runnable postAnimationRunnable) {
…………
target.removeView(v);
FolderIcon

本文分析了Android Launcher3 中的 Folder 源码,详细介绍了如何修改 Android 手机桌面上文件夹的显示风格,包括创建文件夹的过程、源码解析及关键的绘制逻辑。

468

被折叠的 条评论
为什么被折叠?



