3

随着 4.1 jellybean,Robot 开始出现在整个系统 UI 中。我想在 Eclipse 中使用新属性“fontFamily”,如本页 “字体家族”部分所述:http: //developer.android.com/about/versions/android-4.1.html#UI

目标是在所有支持它的设备上使用 Roboto(不包括在 /assets 中),并让字体在所有非 4.0+ 设备上优雅地降级为 Droid sans。同样,不想包含在我的 .apk 中,明白这很容易做到。

希望看到有关通过 API 16 成功使用 fontFamily 的示例代码或反馈。

4

1 回答 1

4

它非常简单,因为旧版本的 Android 将忽略他们不理解的 xml 属性,您可以将其设置在您的文本视图或应用程序的样式中。或者您可以在代码中手动设置它,但那是更多的工作:p

如果你使用的是普通版的 Roboto,你不需要做任何特别的事情,它是 4.0+ 中的默认设置(你可能需要一个基于全息的主题,我不记得了),并且可以使用 Roboto 粗体和斜体使用 TextView 的 TextStyle 属性。

在xml中

<TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:fontFamily="sans-serif-light"
      />

或者在代码中

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN){
    textView.setTypeface(Typeface.create("sans-serif-light", Typeface.NORMAL));         
}
于 2012-11-17T21:13:55.940 回答