/***********************************************************************
* 修改Android系统字号(一)
* 说明:
* 本来以为直接修改了Settings里面的系统字号就可以了,结果发现字号变
* 大了之后,Lancher中app的名字被截掉了一半,下面一半无法显示,之后又
* 为了解决这个问题,找到AppsCustomize相关配置。
*
* 2016-5-12 深圳 南山平山村 曾剑锋
**********************************************************************/ 一、参考文章:
. android4. 修改默认字体大小
http://blog.csdn.net/yicao821/article/details/8733493
. Android 如何修改系统默认字体大小
http://www.tuicool.com/articles/vi6Fra
. Launcher里面修改应用图标以及应用图标对应的字体大小
http://blog.csdn.net/pishum/article/details/20524413?utm_source=tuicool&utm_medium=referral
. android更改桌面icon容纳个数以及布局大小
http://blog.csdn.net/guoguo295/article/details/12772531 二、修改Android系统字号:
. cat frameworks/base/core/java/android/content/res/Configuration.java
public final class Configuration implements Parcelable, Comparable<Configuration> {
......
public void setToDefaults() {
fontScale = 1.7f; // default was 1.0f
mcc = mnc = ;
locale = null;
userSetLocale = false;
......
}
......
} . cat packages/apps/Settings/res/values/arrays.xml
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string-array name="entries_font_size">
<item msgid="">Small</item>
<item msgid="">Normal</item>
<item msgid="">Large</item>
<item msgid="">Huge</item>
</string-array> <string-array name="entryvalues_font_size" translatable="false">
<!--
<item>0.85</item>
<item>1.0</item>
<item>1.15</item>
<item>1.30</item>
-->
<item>1.15</item>
<item>1.30</item>
<item>1.50</item>
<item>1.70</item>
</string-array>
</resources> 三、修改Launcher中应用名字体显示不完整:
. 由于上面的修改,到时app的名字只显示了上面一半,下面一半被截掉了;
. 查看哪些文件和app_icon_size有关:
myzr@myzr:~/myandroid/packages/apps/Launcher2/res$ grep app_icon_size * -R
layout-land/launcher.xml: android:layout_height="@dimen/app_icon_size"
values/dimens.xml: <dimen name="app_icon_size">48dp</dimen>
values-sw600dp/dimens.xml: <dimen name="app_icon_size">64dp</dimen>
values-sw720dp/dimens.xml: <dimen name="app_icon_size">72dp</dimen>
. 由于不知道系统使用了那个dimens.xml文件,于是索性将app_icon_size全部修改一致:
. 全部改成80dp,结果图标变大了,完全看不到app的名字;
. 全部改成48dp,结果图标变小了,app名字全部显示出来了;
. 推论:每个图标+app name在一个固定大小的范围里,所以接下来要寻找到那个固定范围是在哪里描述的。
. 根据上面情况进行定位,最后可以确定,系统使用如下目录中的配置:
packages/apps/Launcher2/res/values-sw720dp/
. 故可知,app图标大小修改一定在:packages/apps/Launcher2/res/values-sw720dp/dimens.xml
. 可能的修改为:
cat packages/apps/Launcher2/res/values-sw720dp/dimens.xml
......
<resources>
......
<!-- AppsCustomize -->
<dimen name="apps_customize_cell_width">96dp</dimen>
<dimen name="apps_customize_cell_height">96dp</dimen>
<integer name="apps_customize_maxCellCountX">-</integer>
<integer name="apps_customize_maxCellCountY">-</integer>
<dimen name="all_apps_button_vertical_padding">4dip</dimen> ......
<!-- Workspace cell size -->
<dimen name="workspace_cell_width_land">96dp</dimen>
<dimen name="workspace_cell_width_port">96dp</dimen>
<dimen name="workspace_cell_height_land">96dp</dimen>
<dimen name="workspace_cell_height_port">96dp</dimen>
<dimen name="workspace_width_gap_land">50dp</dimen>
<dimen name="workspace_width_gap_port">0dp</dimen>
<dimen name="workspace_height_gap_land">16dp</dimen>
<dimen name="workspace_height_gap_port">70dp</dimen>
</resources>
......
. 经过确认,最终程序采用了的设置是:
cat packages/apps/Launcher2/res/values-sw720dp/dimens.xml
<resources>
<dimen name="apps_customize_cell_width">96dp</dimen>
<dimen name="apps_customize_cell_height">96dp</dimen>
</resources>
. 修改如下:
cat packages/apps/Launcher2/res/values-sw720dp/dimens.xml
<resources>
<dimen name="apps_customize_cell_width">120dp</dimen>
<dimen name="apps_customize_cell_height">120dp</dimen>
</resources> 四、为什么横向是5个app显示:
. cat packages/apps/Launcher2/res/values-sw720dp/config.xml
<resources>
<integer name="cell_count_x"></integer>
<integer name="cell_count_y"></integer>
...
</resources>
. 从这里可以看出来貌似我们的程序有点不对劲,因为我们是横向5个,纵向8个,相反了;
. 测试改成每行4个app:
<resources>
<integer name="cell_count_x"></integer>
<integer name="cell_count_y"></integer>
...
</resources>

修改Android系统字号(一)的更多相关文章

  1. 修改Android系统字号(二)

    /*********************************************************************** * 修改Android系统字号(二) * 说明: * ...

  2. 修改Android系统属性SystemProperties.set("sys.powerctl", "shutdown")关机分析

    简介: 从之前的博文中我们提到过,关机流程中最后是通过修改Android属性进行关机操作(SystemProperties.java通过JNI调用访问系统属性),当然我们也可以通过adb命令修改And ...

  3. 修改android系统开机动画

    本文转载自:http://blog.csdn.net/u012301841/article/details/51598115 修改android系统开机动画

  4. Android源码分析(九)-----如何修改Android系统默认时间

    一 : 修改Android系统默认时间 源码路径:frameworks/base/services/java/com/android/server/SystemServer.java 主要变量EARL ...

  5. 修改Android系统的触摸提示音【学习笔记】

    平台信息:内核:Linux version 3.10.0系统:android/android6.0平台:rk3288 作者:庄泽彬(欢迎转载,请注明作者) 邮箱:2760715357@qq.com 本 ...

  6. Android系统移植与调试之------->如何修改Android系统默认显示【开发者选项】并默认打开【USB调试】和【未知来源】开关

    今天有个用户对[设置]有个特殊的要求,即: 1.开机的时候默认显示[开发者选项]并打开[USB调试]开关    ([Developer options]-->[USB debugging]) 2 ...

  7. 修改Android系统关机动画

    文件路径:frameworks\base\services\core\java\com\android\server\power\ShutdownThread.java 在beginShutdownS ...

  8. Android系统源码学习步骤

    Android系统是基于Linux内核来开发的,在分析它在运行时库层的源代码时,我们会经常碰到诸如管道(pipe).套接字(socket)和虚拟文件系统(VFS)等知识. 此外,Android系统还在 ...

  9. Android系统源代码学习步骤

    目前,互联网行业正在朝着移动互联网方向强劲地发展,而移动互联网的发展离不开背后的移动平台的支撑.众所周知,如今在移动平台市场上,苹果的iOS.谷歌的Android和微软的Windows Phone系统 ...

随机推荐

  1. ZOJ3724 Delivery(树状数组??)

    题意:给你一个有向图,第一类边是从第i个点到第i+1个点的,还有多出来的m条二类边,是从u到v的,同样是有向的.然后你要处理询问,从u到v经过最多一次二类边的最短距离是多少. 题目我觉得是神题,然后看 ...

  2. java基础知识回顾之javaIO类---BufferedReader和BufferedWriter

    使用了装饰设计模式:此类的设计是为了提高流操作数据的效率.思想就是定义容器将数据进行临时存储,对于缓冲区对象,其实就是将这个容器进行了分装,并提供了更高效的操作方法. BufferReader: pa ...

  3. Server Library [Apache Tomcat v6.0](unbound)服务未绑定解决办法

    (1) 单击File按钮---钩选Show AllWizard——>选择Server——>单击Next (2)Add Library    选择 WTP Server Runtime(My ...

  4. Mysql统计总结 - 最近30天,昨天的数据统计

    -- 最近30天的医说发布数量SELECT substr(a.feed_publish_time,6, 5) AS '日期', count(*) AS '医说数' FROM xm_feed a WHE ...

  5. ExtJs之进度条实现

    慢慢按书上的作. <!DOCTYPE html> <html> <head> <title>ExtJs</title> <meta h ...

  6. Windows PAE 寻址

    PAE 就是物理地址扩展.我们常规的寻址方式是之前的将虚拟地址化为10 10 12的方式来寻址页目录,页表,页偏移,但是在开始PAE之后的寻址方式发生了改变,将32位的虚拟地址转化成 2 9 9 12 ...

  7. 【uva1502/hdu4117-GRE Words】DP+线段树优化+AC自动机

    这题我的代码在hdu上AC,在uva上WA. 题意:按顺序输入n个串以及它的权值di,要求在其中选取一些串,前一个必须是后一个的子串.问d值的和最大是多少. (1≤n≤2×10^4 ,串的总长度< ...

  8. windows条件下,Ping加上时间戳,并保存到文件,适用于测试网络

    在c盘下面新建文件 ping.vbs 在 ping.vbs中输入代码如下: Dim args, flag, unsuccOut args="" otherout="&qu ...

  9. Js 日期操作

    Js获取当前日期时间及其它操作var myDate = new Date();myDate.getYear();        //获取当前年份(2位)myDate.getFullYear();    ...

  10. Bootstrap学习笔记之整体架构

    之前有粗略地看过一下Bootstrap的内容,不过那只是走马观花式地看下是怎么用的,以及里面有什么控件,所以就没想着记笔记.现在由于要给部门做分享,所以不得不深入地去学习下,不然仅是简单地说下怎么用, ...