How to use Roboto in xml layout

ぃ、小莉子 提交于 2019-12-02 14:53:45
piotrek1543

I've already found some possibilities

Using fontfamily

The simplest way would be add fontFamily attribute to your specific view like TextView

According to How to change fontFamily of TextView in Android

From android 4.1 / 4.2 / 5.0, the following Roboto font families are available:

android:fontFamily="sans-serif"           // roboto regular
android:fontFamily="sans-serif-light"     // roboto light
android:fontFamily="sans-serif-condensed" // roboto condensed
android:fontFamily="sans-serif-thin"      // roboto thin (android 4.2)
android:fontFamily="sans-serif-medium"    // roboto medium (android 5.0)

http://developer.android.com/reference/android/widget/TextView.html#attr_android:typeface

in combination with

android:textStyle="normal|bold|italic"

this 14 variants are possible:

  • Roboto regular
  • Roboto italic
  • Roboto bold
  • Roboto bold italic
  • Roboto-Light
  • Roboto-Light italic
  • Roboto-Thin
  • Roboto-Thin italic
  • Roboto-Condensed
  • Roboto-Condensed italic
  • Roboto-Condensed bold
  • Roboto-Condensed bold italic
  • Roboto-Medium
  • Roboto-Medium italic

You can also do this programmatically using code as below:

textView.setTypeface(Typeface.create("sans-serif-thin", Typeface.NORMAL));

Using typeface

Available built-ibn fonts are:

  • normal
  • sans
  • serif
  • monospace

You can cobine them like below:

   android:typeface="sans" | "serif" | "monospace"

See android:typeface.

Using styles.xml

You set style in styles.xml` like that:

<style name="boldText">
    <item name="android:textStyle">bold|italic</item>
    <item name="android:textColor">#FFFFFF</item>
</style>

and to use this style in main.xml layout file just use:

style="@style/boldText"

Combining Text atrributes

You can mix TextView attributes like in code below:

 android:fontFamily="serif" 
 android:textStyle="italic"

Using third-party libraries

Foundry - apply custom typefaces through XML layouts and styles.

android-typeface-helper - Typeface helper for Android

Additional lecture

You may also want to read about Roboto typeface and Typography Google's Design Guide.

Similar StackOverflow Issues:

In addition to piotrek's answer, here is a quick cheatsheet if you haven't decided which Roboto font to use:

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!