2017-06-05 15 views
4

android lollipopにgeomanist(カスタム)フォントを使用する方法はありますか?ロリポップでカスタムフォントが動作しない

他のバージョンでも動作します。ここで

は、私はこの Libraryを使用 MyApplicationをクラスで私のコード

FontsOverride.setDefaultFont(this, "DEFAULT", "geomanist-lightnew.ttf"); 
    FontsOverride.setDefaultFont(this, "MONOSPACE", "geomanist-lightnew.ttf"); 
    FontsOverride.setDefaultFont(this, "SERIF", "geomanist-lightnew.ttf"); 
    FontsOverride.setDefaultFont(this, "SANS_SERIF", "geomanist-lightnew.ttf"); 

public final class FontsOverride { 

public static void setDefaultFont(Context context, 
            String staticTypefaceFieldName, String fontAssetName) { 
    final Typeface regular = Typeface.createFromAsset(context.getAssets(), 
      fontAssetName); 
    replaceFont(staticTypefaceFieldName, regular); 
} 

protected static void replaceFont(String staticTypefaceFieldName, 
            final Typeface newTypeface) { 
    try { 
     final Field staticField = Typeface.class 
       .getDeclaredField(staticTypefaceFieldName); 
     staticField.setAccessible(true); 
     staticField.set(null, newTypeface); 
    } catch (NoSuchFieldException e) { 
     e.printStackTrace(); 
    } catch (IllegalAccessException e) { 
     e.printStackTrace(); 
    } 



} 




} 

おかげ

+0

読むhttps://stackoverflow.com/questions/33923803/how-to-set-custom-のようなカスタムフォント用のライブラリを使用していますフォントのための完全なアプリケーションin-android –

答えて

3

あり、それは、すべてのデバイス上で見事な作品

ステップ: -

1)あなたのGradle compile 'com.github.balrampandey19:FontOnText:0.0.1'

2にこの行を追加します。)この

3のように、資産フォルダにフォントを追加します。)その後、XMLでビューを置き換えます

この行は、必要なカスタムフォントを設定するために重要ですapp:font="regular.ttf"

あなたは、アプリケーション全体を通じて同じ "フォント" を使用する場合は、根本的な原因この Guide here

+0

私はアプリ全体のgeomanistフォントを変更する必要があります。特定のテキスト表示ではありません。とにかくお返事いただきありがとうございます。 @Akshay Katariya –

+0

これはもっと役に立ちそうだと思います。https://stackoverflow.com/a/42218846/4762767 –

+0

(stackoverflow.com/a/42218846/4762767)非常に便利なリンクです。そのうまく動作します。 @ AkshayKatariyaありがとう –

1
  1. に従うことができますButtonsEdittext

    OR

    ために同じことを行うことができます問題は、ひどく書かれたフォントファイルなので、 解決策は、再エンコードすることです違反のフォント。 http://www.freefontconverter.com/などのオンライン変換ツールを使用できます。

  2. 別の代替はhttps://github.com/chrisjenx/Calligraphy

dependencies { 
      compile 'uk.co.chrisjenx:calligraphy:2.2.0' 
     } 
関連する問題