/***********************************************************************
* 修改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. c# string.Format用法总结

    文章出处:http://www.cnblogs.com/7788/archive/2009/05/13/1455920.html 先举几个简单的应用案例: 1.格式化货币(跟系统的环境有关,中文系统默 ...

  2. 欧拉工程第53题:Combinatoric selections

    package projecteuler51to60; class p53{ void solve1(){ int count=0; int Max=1000000; int[][] table=ne ...

  3. Android核心分析 之九Zygote Service

    Zygote Service 在本章我们会接触到这两个单词: Zygote [生物] 受精卵, 接合子, 接合体 Spawn:产卵 通过这两个单词,我们就可以大体知道Zygote是干什么的了,就是叫老 ...

  4. (KEIL)MDK5安装与JLINK问题解决方法(支持代码自动补全)

    MDK V5在10月8日发布,昨天终于没忍住装上使用了一下,尝了尝鲜.   安装和破解的方法相信各位高手都不在话下,实在不会的可以参考keil4的安装步骤,keil5 和 keil4的安装没有的区别. ...

  5. C#之你懂得的反射

    前言:反射在C#中虽然不常用(如果不需要动态加载xx.dll),但是有时候却是设计某个程序或者完成某类功能比较好用的技术.比如:一个支持动态扩展的程序,这样就需要动态加载dll,动态创建加载dll的程 ...

  6. iOS:Autolayout自动布局实例

    Autolayout自动布局实例即可以用故事板布局,也可以用纯代码创建,各有各的优点:用故事板布局,比较方便,而且直观,可以很直白的看到视图布局后的变化:采用代码布局,虽然代码比较多,有些麻烦,但是可 ...

  7. POJ3176——Cow Bowling(动态规划)

    Cow Bowling DescriptionThe cows don't use actual bowling balls when they go bowling. They each take ...

  8. mac 下tomcat启动报错 unknown host

    解决方法:sudo scutil --set HostName localhost

  9. C++调用python

    本文以实例code讲解 C++ 调用 python 的方法. 本文在util.h中实现三个函数: 1. init_log: 用google log(glog)初始化log 2. exe_command ...

  10. Android OpenCV样例调试+报错处理

    1.OpenCV样例调试:<OpenCV Sample - image-manipulations>       blog+报错:E/CAMERA_ACTIVITY(17665): Cam ...