android 自定义文件夹图标,Launcher3 Android10.0修改文件夹图标为九宫格
Launcher3 Android10.0修改文件夹图标为九宫格
Launcher3 Android10.0修改文件夹图标为九宫格
文件夹图标在Launcher里表示为预览文件夹
1、修改预览文件夹的最大容纳数量为9
ClippedFolderIconLayoutRule.java:
public static final int MAX_NUM_ITEMS_IN_PREVIEW = 9;
2、判定只要rank小于9,就是可以在预览文件夹里显示的item
FolderIconPreviewVerifier.java:
public boolean isItemInPreview(int page, int rank) {
if (mGridSize[0] == 1) {
Log.w(TAG, "setFolderInfo not called before checking if item is in preview.");
}
return rank < MAX_NUM_ITEMS_IN_PREVIEW;
}
3、改完上面,这里传进来的index就只会是0-8,然后改一下计算位置的方法。
ClippedFolderIconLayoutRule.java:
private static final float MIN_SCALE = 0.2f;
public PreviewItemDrawingParams computePreviewItemDrawingParams(int index, int curNumItems,
PreviewItemDrawingParams params) {
float totalScale = scaleForItem();
float transX;
float transY;
float overlayAlpha = 0;
getPosition(index, mTmpPoint);
transX = mTmpPoint[0];
transY = mTmpPoint[1];
if (params == null) {
params = new PreviewItemDrawingParams(transX, transY, totalScale, overlayAlpha);
} else {
params.update(transX, transY, totalScale);
params.overlayAlpha = overlayAlpha;
}
return params;
}
private void getPosition(int index, float[] result) {
int x = index % 3;
int y = index / 3;
float totalLength = mAvailableSpace;
float iconSize = mIconSize * scaleForItem();
float padding = (totalLength-(iconSize*3))/4;
result[0] = (iconSize+padding)*x+padding;
result[1] = (iconSize+padding)*y+padding;
}
public float scaleForItem() {
return MIN_SCALE * mBaselineIconScale;
}
其实到这里就已经就是九宫格了
4、文件夹的图标比正常app图标要小一点,改成和app图标一样大。
DeviceProfile.java:
private void updateIconSize(float scale, Resources res, DisplayMetrics dm) {
......
// Folder icon
folderIconSizePx = iconSizePx;
......
}
5、设置文件夹图标和标题间距为0。
FolderIcon.java:
public static FolderIcon fromXml(int resId, Launcher launcher, ViewGroup group,
FolderInfo folderInfo) {
......
lp.topMargin = grid.iconSizePx;
}
因为之前有设置过app的图标和标题的间距为0,代码如下:
BubbleTextView.java:
public BubbleTextView(Context context, AttributeSet attrs, int defStyle) {
......
if (display == DISPLAY_WORKSPACE) {
......
setCompoundDrawablePadding(0);
......
} else if (display == DISPLAY_ALL_APPS) {
......
setCompoundDrawablePadding(0);
......
} else if (display == DISPLAY_FOLDER) {
......
//这里其实是文件夹PagedView里的app图标,不是文件夹图标
setCompoundDrawablePadding(0);
......
}
}
到这里就改完啦
如果你只改了MAX_NUM_ITEMS_IN_PREVIEW,你的文件夹图标将是下面这种,还能转圈圈哈哈哈哈哈哈
Launcher3 Android10.0修改文件夹图标为九宫格相关教程
android 自定义文件夹图标,Launcher3 Android10.0修改文件夹图标为九宫格相关推荐
- Android10.0修改默认usb为MTP模式
Android10.0修改默认usb为MTP模式,方法如下: 在frameworks/base/services/usb/java/com/android/server/usb/UsbDeviceMa ...
- 如何更改linux文件权限设置,linux文件权限学习笔二——如何修改文件权限(chgrp,chown,chmod)...
linux文件权限学习随笔二--如何修改文件权限 一.修改文件所属组群--chgrp 修改文件所属组群很简单-chgrp命令,就是change group的缩写(我们可以利用这些来记忆命令) 语法:c ...
- 计算机中扩展名在哪里更改,什么是文件扩展名?Win10如何修改文件扩展名?
文件扩展名也叫文件的后缀名,是操作系统用来标志文件类型的一种机制.一般一个扩展名是跟在主文件名后面的,由一个分隔符分隔.比如,"QQ.exe"的文件名中,QQ是主文件名,exe是扩 ...
- data后缀文件解码_封装ThinkPHP6.0通用文件上传
php中文网最新课程 每日17点准时技术干货分享 本文为php中文网认证作者:"wpj"投稿,欢迎加入php中文网有偿投稿计划! 本文实例讲述了封装ThinkPHP6通用文件上传方 ...
- 服务器更改文件夹权限,云服务器如何修改文件权限
chmod命令可以使用数字修改文件权限 r --> 4 w --> 2 x --> 1 由于这 9 个字符分属 3 类用户,因此每种用户身份包含 3 个权限(r.w.x),通过将 3 ...
- 怎样把服务器的文件改名字,linux服务器如何修改文件名称rm命令删除文件时排除特定文件...
grep -i richard telnos 在文件telnos中检索字符串richard,不顾字母的大小写. grep '[0-9]*' chapter1 由于[0-9]*与空字符串匹配,上述命令打 ...
- Linux下文件权限查看并使用chomd修改文件权限
文章目录 1.查看文件权限 2.修改文件权限 2.1.增加权限 2.2.删除权限 2.3.唯一权限 2.4.命令用法总结 1.查看文件权限 首先我使用了root账户在/usr/local/test创建 ...
- linux新建脚本文件,linux shell脚本编程2—修改文件时间和创建新文件即touch命令的使用...
在使用ls命令时,每个文件在Linux下面都会记录3个主要的修改时间: modification time(mtime,修改时间):当该文件的"内容数据"更改时,就会更新这个时 ...
- 如何批量修改文件后缀名?(批量修改文件的扩展名)
无需软件批量修改文件后缀名?怎么通过命令行批量修改文件后缀名?有时候由于文件后缀名格式不同,有的时候我们需要对文件扩展名进行修改,或者文件扩展名丢失,需要添加.如果数量少的文件那还简单直接修改就好了. ...
最新文章
- 单片机找工作好找吗?不懂英语怎么学会单片机?
- java中的volatile和synchronized
- 理解vue赋值新属性
- 1.5 卷积步长-深度学习第四课《卷积神经网络》-Stanford吴恩达教授
- 任务和特权级保护(三)——《x86汇编语言:从实模式到保护模式》读书笔记34
- MT7688 坑爹的 SPI Master 半双工全双工问题
- 中台架构详解(上) | 大咖说中台
- 如何使用Linux重置Windows密码
- 异常详细信息: System.UnauthorizedAccessException: 对路径的访问被拒绝。
- 数据挖掘与其商务智能上的应用的实验报告
- 如何在 Apple TV 上更快地打开您喜爱的应用?
- 转 fpga学习经验1
- 计算机专业代码933,数学类专业代码
- python安装包————————百度网盘
- 个人作业-软件案例分析
- 监听浏览器返回,可清除历史记录(移动端:手势返回)(vue)
- Windows虚拟机的相关配置
- 中文CTEX加下划线无法换行问题
- PTG DAO 生态
- 穿越寒冬春暖花开,当下便是在社科院杜兰金融管理硕士项目读研的好时光