AACustomFontは、XMLの軽量カスタムフォントバインダーであり、 TextView 、 Button 、 EditText 、 RadioButton 、 CheckBoxタグの直接です。ライブラリは、XMLのカスタムフォントのカスタムビューを回避し、各ビューの書体を設定するためのJavaコードを最小限に抑えることを目的としています。
TextViewから拡張された任意のビューでAACustomFont使用できます。たとえば、 TextView Button EditText RadioButton CheckBox

AACustomFont 、Maven、Gradle、または手動でインストールできます。
ステップ1。ビルドファイルにjitpackリポジトリを追加します
< repositories >
< repository >
< id >jitpack.io</ id >
< url >https://jitpack.io</ url >
</ repository >
</ repositories >ステップ2。依存関係を追加します
< dependency >
< groupId >com.github.EngrAhsanAli</ groupId >
< artifactId >AACustomFont</ artifactId >
< version >1.1</ version >
</ dependency >ステップ1。ビルドファイルにjitpackリポジトリを追加します
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
ステップ2。依存関係を追加します
dependencies {
compile 'com.github.EngrAhsanAli:AACustomFont:1.1'
}
上記の依存関係マネージャーのいずれかを使用したくない場合は、Javaフォルダーに含まれるファイルをプロジェクトに追加することで、 AACustomFont手動でプロジェクトに統合できます。
カスタムフォントをビューにバインドするために、データバインディングを有効にする必要があります。 build.gradleに以下を追加します。
android {
dataBinding {
enabled = true
}
}Assets/FontsディレクトリにFontファイルを追加できます。 AACustomFont 、そのディレクトリからフォントを自動的に自動的につかみます。フォントファイルには.ttfまたは.otf拡張機能がある場合があります。
レイアウトの親タグをlayoutタグに変更し、残りをそのタグに入れてください。
< layout xmlns : android = " http://schemas.android.com/apk/res/android "
xmlns : app = " http://schemas.android.com/apk/res-auto "
xmlns : tools = " http://schemas.android.com/tools " >
<!-- Put the layouts here -->
</ layout >次のようにフォントを設定します:
< TextView
<!-- other properties -->
app:font="@{`budidaya-italic`}" />フォント名は常に小文字にあることに注意してください。フォントが指定されていない場合、
app:font="@{``}でデフォルトのフォントが取得されます。
Javaのビューをバインドする必要があります:
DataBindingUtil . setContentView ( this , R . layout . your_layout );
// Using LayoutInflator
DataBindingUtil . inflate ( inflater , R . layout . your_layout , this , true );次の方法を使用して、エイリアスをフォント名に設定できます
AACustomFont.getInstance(this)
.setAlias("myfont", "Font-File.otf")
.setDefaultFontName("myfont");
次の方法を使用して、フォント名で書体をオーバーライドできます
// For all typefaces in given activity context with default font
AACustomFont.getInstance(this).overrideFonts(this);
// For all typefaces in given activity context with specified font
AACustomFont.getInstance(this).overrideFonts(this, "my_font");
// For all typefaces in given viewgroup with specified font
AACustomFont.overrideFonts(button, "myfont");
AACustomFont MITライセンスの下で入手できます。詳細については、ライセンスファイルを参照してください。
プルリクエストは大歓迎です!最良の貢献は、典型的なアプリライフサイクル中にメインスレッドをブロックすることが知られているクラス/方法の代替または構成で構成されます。
アプリでAACustomFontを使用している場合は、Engrにメールを送信してください。アーサン・アリ