`
hemowolf
  • 浏览: 154636 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

android4.x系统设置字体大小导致应用布局混乱的解决方案

阅读更多

从android4.0起系统设置的”显示“提供设置字体大小的选项。这个设置直接会影响到所有sp为单位的字体适配,所以很多app在设置了系统字体后瞬间变得面目全非。下面是解决方案

 

Resources res = getResources();
Configuration config=new Configuration();
config.setToDefaults();
res.updateConfiguration(config,res.getDisplayMetrics() );

 

虽然google推荐使用sp作为字体的单位,但实际的开发过程中通常是根据UIUE的设计稿来换算sp(px换算sp)。而sp即使在同一种密度下其值也不尽相同。比如在240dpi的设备,如果是480x800分辨率这个值通常是1.5倍(scaledDensity=1.5),如果是480xZ(z>800)那么这个值有可能大于1.5。这无疑给设备的适配带来更多的困难和陷阱。所以个人通常建议使用dpi来作为字体的单位。

分享到:
评论

相关推荐

    Android中应用程序获得系统签名权限(platform.x509.pem platform.pk8 signapk.jar)

    本文将详细介绍如何使用`platform.x509.pem`、`platform.pk8`以及`signapk.jar`这三个文件来为Android应用获取系统签名权限。 `platform.x509.pem`是一个X.509证书文件,它包含了公钥信息。在Android系统中,这个...

    动态设置android webview字体大小DEMO

    在`WebViewTest1`这个项目中,应该包含了实现上述功能的代码示例,包括布局文件(如`activity_main.xml`)中设置的WebView以及相关的Java代码(如`MainActivity.java`)来加载网页并实现字体大小的动态调整。...

    Android应用开发中使用第三方字体

    4. **全局字体替换**:如果希望整个应用都使用同一套自定义字体,可以在应用程序的基类Activity或Application中设置默认的Typeface,然后所有继承自该基类的Activity都将继承这个字体设置。 5. **考虑性能**:使用...

    修改spinner字体大小及颜色,还有列表样式

    为了改变字体大小和颜色,我们需要创建自定义的布局文件,然后将其应用到Spinner的Adapter中。 1. **修改字体大小**: - 在res/layout目录下创建一个新的XML布局文件,如`custom_spinner_item.xml`。 - 在该布局...

    android系统签名(platform.pk8,platform.x509.pem,signapk.jar)

    实现静默安装必须拥有该机器的系统签名,所以安装程序必须得拥有系统签名 实现系统签名必须得拥有两个签名文件和一个jar包 platform.pk8 platform.x509.pem signapk.jar 1.cd到以上三个文件的目录去 2.java -jar ...

    Android support.v7包

    Android support.v7包

    android设置全局字体样式

    在Android开发中,为了提供一致且个性化的用户体验,有时我们需要对整个应用程序的字体样式进行统一设置,这不仅可以增强视觉效果,还可以提升应用的品牌识别度。本文将深入探讨如何在Android中实现全局字体样式的...

    signapk.jar工具及系统platform密钥,platform.pk8 platform.x509.pem

    在Android系统开发中,安全性和签名验证是至关重要的环节,特别是在发布APK应用时。`signapk.jar`工具,以及`platform.pk8`和`platform.x509.pem`文件,构成了Android系统签名的核心组成部分。这里我们将深入探讨...

    android dx.jar 下载

    在Android开发过程中,dx.jar是一个至关重要的工具,它是Android SDK的一部分,主要负责将.java源代码编译成.dex(Dalvik Executable)文件,这是Android应用运行的字节码格式。当你遇到“Unknown error: Unable to ...

    android.hardware.camera2自定义相机

    在Android平台上,`android.hardware.camera2`是官方提供的高级相机API,它提供了更精细的控制和更高的灵活性,使得开发者能够创建具有专业级别的自定义相机应用。这个API在Android 5.0(API级别21)引入,替代了...

    Android4高级编程源代码

    《Android4高级编程源代码》是一份针对Android 4.x版本深入学习的宝贵资源,它包含了一系列关于Android应用开发的高级技术与实践案例。通过下载并研究这些源代码,开发者可以提升自己的Android编程技能,了解如何在...

    android设置系统时间 源代码 步骤说明

    <uses-permission android:name="android.permission.WRITE_SETTINGS" /> ``` 自Android 6.0(API级别23)起,用户需要在运行时授予敏感权限,包括`WRITE_SETTINGS`。因此,你需要在运行时检查并请求此权限,如果...

    Unity 4.x Pro Patch

    Unity 4.x Pro Patch 是一个针对Unity 4.x专业版的补丁程序,主要用于解决或增强该版本中的特定功能或性能。Unity是一款广泛应用于游戏开发、虚拟现实(VR)、增强现实(AR)以及交互式3D应用的跨平台集成开发环境。在...

    android.util.Base64类

    android.util.Base64类

    android.jar源码

    通过深入研究`android.jar`源码,开发者不仅可以更好地理解和利用Android API,还能提高解决问题的能力,为打造高效、稳定、安全的Android应用打下坚实基础。无论是初学者还是资深开发者,都应该对这个宝藏库进行...

    android 修改listview的不同item字体的颜色

    标题"android 修改listview的不同item字体的颜色"和描述"改代码主要是针对listview修改指定item字体颜色"都指向了这个主题。下面我们将详细探讨如何实现这一功能。 首先,我们需要理解ListView的基本工作原理。...

    Android应用开发入门教程(经典版)

    第一篇Android系统结构和SDK使用.........................................................................................................第4章Android应用程序示例...............................................

    android自定义圆形布局CircleLayout

    在Android开发中,自定义布局是提升应用独特性和用户体验的重要手段。`CircleLayout`就是一种特殊的自定义布局,它使得内部的子视图按照圆形排列,增强了界面的视觉效果。本篇文章将深入探讨如何实现这样一个自定义...

    Android 开机自启动应用

    在Android系统中,开机自启动应用是指当设备完成启动过程后,系统会自动运行的一类应用程序。这些应用通常会在用户无须手动干预的情况下执行特定任务,例如同步数据、推送通知或者进行后台服务的初始化。"BOOT_...

    android system.img解包工具(windows)版

    把unyaffs与system.img放到同一目录,进入命令模式,运行:unyaffs system.img;windows上的android img解包工具,用于解system.img等文件,不包含打包功能。

Global site tag (gtag.js) - Google Analytics