`
80demon
  • 浏览: 77803 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android开发中修改程序字体

 
阅读更多

 Android提供三种字体:“Sans”,“serif“和“monospace”。

  1、在Android XML文件中设置字体
  可以采用android:typeface,例如android:typeface=”monospace”。在这里例子中我们在Activity中对android:text=”Hello, World! 您好”分别进行了四种显示方式,依次为“Sans”,“serif”,“monospace”和系统缺省方式(经试验缺省采用采用sans)。英文字体有差异,貌似中文字体没有差异。XML文件如下:

  <?xml version=“1.0″ encoding=”utf-8″?>
  <TableLayout … … android:stretchColumns = “1”>
  <TableRow>
  <TextView android:text=“sans:”
  android:layout_marginRight=“4px”
  android:textSize=“20sp” />

  <TextView android:text=”Hello, World! 您好”
  android:typeface =“sans” <!– android:typeface用于指定字体–>
  android:textSize=“20sp” />
  </TableRow>

  <TableRow>
  <TextView android:text=“custom:” …. />
  <TextView android:id=“@+id/c12_custom”
  android:text=“Hello, World! 您好”
  android:textSize=“20sp” />
  </TableRow>
  </TableLayout>

  2、使用其他字体

  1)将新字体的TTF文件copy到assets/fonts/目录下面,例如我们将“*.ttf”copy了过去。
  2)我们需要将widget设置为该字体,比较遗憾的是,不能直接在XML文件中进行,需要编写源代码。

  TextView tv = (TextView)findViewById(R.id.c12_custom);
  //从assert中获取有资源,获得app的assert,采用getAserts(),通过给出在assert/下面的相对路径。在实际使用中,字体库可能存在于SD卡上,可以采用createFromFile()来替代createFromAsset。
  Typeface face = Typeface.createFromAsset (getAssets() , “fonts/timesi.ttf” );
  tv.setTypeface (face);

  在模拟器中先后导入华文行楷的字体,大约4M,但是系统无法识别出该字体,没有显示,然后尝试使用英文字体timesi.ttf,正常。因此Android并非和所有的TTF字体都能兼容,尤其在中文特殊字体的支持会存在问题,对于不兼容的字体,Android不出报错,只是无法正常显示。一般而言我们都会使用系统缺省提供的体。
  对于华文行楷字体,我们一开始使用的文件是中文名字,出现报错,后来我们将之改为全小写的英文名称就不会出错,所以在文件命名上需要注意。

  3、一些注意
  使用其他字库,都会消耗程序的空间,这是要非常注意的。而且这些字库有时并不能完全提供你所需要的文字。
  举个例子,省略方式。当文字太多的时候,可以通过省略号省略后面的内容,省略号是使用“…”作为一个字体,可通过android:ellipsize属性进行设置。如果我们需要使用省略功能,需要确保字体具有省略号。此外,为了保证长度的一直,Android会进行填充处理,除了将一个字符更换为省略符合外,后面的字符将更换为一个特殊的Unicode字符,‘ZERO WIDTH NO-BREAK SPACE’ (U+FEFF)。这个字符并占用任何可视的位置,但是保障了string具有同样的长度。不是所有的字体都支持这个特殊的字符,可能会引发一些乱码现象。
  Android是支持国际语言的,但是我们仍需要对custom的字体小心处理

分享到:
评论

相关推荐

    Android中部分修改字体和全局修改字体的方法

    在Android开发中,修改字体是常见的需求,无论是为了提升用户体验,还是满足个性化设计。本篇文章将深入探讨如何在Android应用中实现部分文本和全局文本的字体修改,为开发者提供详尽的指南。 首先,让我们来看看...

    android 改变字体字体和大小

    在Android开发中,改变应用程序中的字体和大小是常见的需求,特别是在创建用户友好和可自定义的应用时。这个任务可以通过操作TextView或自定义View组件来实现。以下是一些关于如何在Android中更改字体和大小的关键...

    Android SDK 中文开发文档.pdf

    1. **应用程序框架**:Android支持组件的重用和替换,允许开发者自由地创建和修改应用组件,提供灵活的架构设计。应用程序框架包括各种服务和系统,如活动管理器(Activity Manager)、通知管理器(Notification ...

    Android 设置全局字体大小

    在Android开发中,有时我们需要为应用程序提供全局的字体大小调整功能,以便用户可以根据个人偏好或视力需求定制界面显示。本文将深入探讨如何实现这一功能,主要基于提供的标题"Android 设置全局字体大小"和描述...

    【安卓】全局字体设置&修改字体样式

    本教程将详细介绍如何在Android系统中进行全局字体的调整,以及如何安装并应用特定的字体包,例如阿里-惠普体。 首先,全局字体设置是指改变手机或平板上所有应用程序的默认字体。在大多数安卓设备中,系统并未提供...

    android常见字体库.zip

    在Android开发中,字体库扮演着至关重要的角色,它们决定了应用程序和用户界面的视觉呈现和用户体验。本资源“android常见字体库.zip”提供了一系列优化过的字体文件,方便开发者直接应用于Android项目,无需额外的...

    Android开发艺术探索-真书中源码

    《Android开发艺术探索》是一本深受Android开发者喜爱的书籍,它深入浅出地讲解了Android应用开发中的各种技术和实践。这本书的源码是作者为了帮助读者更好地理解和实践书中的知识点而提供的,对于学习和提升Android...

    android动态更改字体大小.zip

    在Android开发中,动态改变应用中的字体大小是一个常见的需求,特别是在考虑用户个性化设置或适应不同视力需求时。这个"android动态更改字体大小.zip"压缩包包含了一个名为"TextSizeDemo"的示例项目,用于演示如何...

    动态设置android webview字体大小DEMO

    在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序中内嵌网页内容。这个"动态设置android webview字体大小DEMO"是一个示例项目,专门演示如何在运行时调整WebView中显示的文本的字体大小,以提高...

    仿微信改变app的字体大小功能,设置应用字体大小

    在Android开发中,为了提供更好的用户体验,经常需要自定义应用的字体大小,使其与系统设置独立,例如微信就提供了这样的功能。本篇文章将详细讲解如何实现一个类似微信的App字体大小设置功能,使得用户可以在应用内...

    android设置全局字体样式

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

    Android应用程序全局 主题字体控制 模型源码

    Android应用程序全局控制《主题设置》源码 涉及:语言设置、主题颜色、字体大小、字体样式、长短震动、铃声设置、Mp3播放服务、本地数据储存读写等,App必备实用功能集合 代码简明易懂,注释详细,适合初学者 使用...

    android 改变字体样式

    在Android开发中,改变字体样式是一项重要的任务,它能让应用程序具有更高的可定制性和用户体验。本文将深入探讨如何在Android应用中实现字体样式的个性化设置,让您的APP更加炫酷。 首先,我们需要理解Android中的...

    webview 修改字体颜色大小背景 js实现

    在Android和iOS应用开发中,Webview是一种常用的组件,它允许开发者在原生应用中嵌入网页内容。本文将深入探讨如何使用JavaScript在Webview中动态地修改字体颜色、大小和背景色,以提供更好的用户体验。 一、...

    安卓字体使用多语言相关-android设置全局字体样式.rar

    "安卓字体使用多语言相关-android设置全局字体样式"的主题主要涵盖了如何在Android应用程序中实现全局字体样式更改,以及支持多语言环境下的字体适配。下面我们将深入探讨这个主题。 首先,Android系统本身支持多种...

    安卓字体使用多语言相关-Android动态改变应用程序语言.zip

    在Android开发中,支持多语言是一项重要的功能,可以让应用程序适应全球不同地区的用户。"安卓字体使用多语言相关-Android动态改变应用程序语言.zip"这个压缩包包含的资源可能就是关于如何在Android应用中实现动态...

    Android 使用Font和style定义App全局字体样式

    在Android应用开发中,为实现一致且美观的用户体验,全局定义字体样式是非常重要的。通过使用`Font`和`style`,开发者可以轻松地控制整个应用程序中的文本显示,使其符合品牌风格或者用户偏好。本文将详细讲解如何在...

    修改程序所有页面字体颜色和背景

    在Android开发中,为了提供个性化的用户体验,有时我们需要根据用户需求改变应用的界面风格,包括字体颜色、字体大小以及背景色。"修改程序所有页面字体颜色和背景"这个主题涉及到了Android中的主题(Themes)和...

Global site tag (gtag.js) - Google Analytics