282

この質問への回答で、ユーザーは と 12 のバリアントの値をリストしますandroid:fontFamily(以下を参照)。これらの値はどこから来たのですか? のドキュメントにandroid:fontFamilyは、この情報がどこにも記載されていません (ここここを確認しました)。文字列は Android のstyles.xmlファイルのさまざまな場所にリストされていますが、これらはどのようにして Roboto フォントにマップされるのでしょうか?

Android 4.1 / 4.2 以降では、次の Roboto フォント ファミリーを使用できます。

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)

これと組み合わせて

android:textStyle="normal|bold|italic" 

12 のバリアントが可能です。

  • 通常
  • イタリック
  • 大胆な
  • ボールドイタリック
  • ライトイタリック
  • 薄い
  • 細い斜体
  • コンデンスレギュラー
  • 凝縮斜体
  • 凝縮された太字
  • 凝縮された太字斜体

styles.xml私が取り組んでいるアプリケーションのファイルで、誰かがこれをフォントファミリとしてリストしましたが、それは間違っていると確信しています:

<item name="android:fontFamily">Roboto-Regular.ttf</item>

アプリのテーマを正しく設定し (fontFamily を正しく使用することも含まれます)、ファイルを確認する前に作成されたスタイルの冗長性をすべて削除したいと考えています。

4

3 に答える 3

128

使用可能なフォント (Oreo 現在)

すべてのフォントのプレビュー

Material Design Typographyページには、これらのフォントの一部のデモと、フォントとスタイルの選択に関する提案があります。

コード研究者向け: fonts.xmlAndroid フォントの決定的かつ拡大し続けるリストです。


これらのフォントの使用

android:fontFamilyおよびandroid:textStyle属性を設定します。

<!-- Roboto Bold -->
<TextView
    android:fontFamily="sans-serif"
    android:textStyle="bold" />

このテーブルから目的の値に:

Font                     | android:fontFamily          | android:textStyle
-------------------------|-----------------------------|-------------------
Roboto Thin              | sans-serif-thin             |
Roboto Light             | sans-serif-light            |
Roboto Regular           | sans-serif                  |
Roboto Bold              | sans-serif                  | bold
Roboto Medium            | sans-serif-medium           |
Roboto Black             | sans-serif-black            |
Roboto Condensed Light   | sans-serif-condensed-light  |
Roboto Condensed Regular | sans-serif-condensed        |
Roboto Condensed Medium  | sans-serif-condensed-medium |
Roboto Condensed Bold    | sans-serif-condensed        | bold
Noto Serif               | serif                       |
Noto Serif Bold          | serif                       | bold
Droid Sans Mono          | monospace                   |
Cutive Mono              | serif-monospace             |
Coming Soon              | casual                      |
Dancing Script           | cursive                     |
Dancing Script Bold      | cursive                     | bold
Carrois Gothic SC        | sans-serif-smallcaps        |

(Noto Sans は代替フォントです。直接指定することはできません)。

注:この表は から派生したものfonts.xmlです。各フォントのファミリ名とスタイルは fonts.xml にリストされています。

<family name="serif-monospace">
    <font weight="400" style="normal">CutiveMono.ttf</font>
</family>

serif-monospaceしたがって、 はフォント ファミリーであり、normalはスタイルです。


互換性

fonts.xml と以前の system_fonts.xmlログに基づいて、各フォントがいつ追加されたかを確認できます。

  • Ice Cream Sandwich: Roboto レギュラー、ボールド、イタリック、ボールド イタリック
  • Jelly Bean: Roboto light、light italic、condensed、condensed bold、condensed italic、および condensed bold italic
  • Jelly Bean MR1: Roboto 薄いと薄い斜体
  • ロリポップ:
    • ロボミディアム、ミディアム イタリック、ブラック、ブラック イタリック
    • Noto Serif レギュラー、ボールド、イタリック、ボールド イタリック
    • キューティヴ・モノ
    • 近日公開
    • ダンシングスクリプト
    • カロワ ゴシック SC
    • 能登サンズ
  • Oreo MR1:ロボコンデンスメディウム
于 2014-06-06T00:44:05.983 に答える