我写了一个可以做到这一点的图书馆项目。它被称为 Nifty:https ://github.com/tom-dignan/nifty
使用 nifty,您可以在您的 assets 目录中从您的 styles.xml 文件中指定字体,或者直接在您的 XML 布局中作为一个属性。它提供了一个自定义NiftyTextView
并NiftyButton
继承了其父类的所有功能,除了提供在 XML 中指定字体的能力。
示例样式:
<style name="MyStyle" parent="@android:style/Theme">
<item name="typeface">my_font_that_is_in_assets.ttf</item>
</style>
示例 XML:
<com.tomdignan.nifty.NiftyTextView
android:id="@+id/title"
style="@style/MyStyle"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
或者,如果您不使用样式:
<com.tomdignan.nifty.NiftyTextView
xmlns:nifty="http://schemas.tomdignan.com/nifty"
nifty:typeface="my_font_that_is_in_assets.ttf"
android:id="@+id/title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
变得漂亮
注意事项:自定义视图在布局编辑器中不可预览。我的解决方法是使用搜索/替换。