2016-06-24 5 views
0

私の携帯電話(アンドロイド4.4.2のAPI 19)でアプリケーションを実行すると動作しません!アンドロイドの書体での問題

public class MainActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { 
      // You can use here an API which was added in Lollipop. 
      Typeface f = Typeface.createFromAsset(getAssets(),"bogie.tff"); 
      TextView F = (TextView)findViewById(R.id.alo); 
      F.setTypeface(f); 
     } 
    } 
} 

Logcat https://codeshare.io/gnk8v のGradle https://codeshare.io/gkwXQ

+1

をTTFファイルをしてください入れ、コードのスクリーンショットを投稿しないでください。テキストをコピーして投稿に貼り付けます。 –

+0

しかし、logcatはコードではありません。私はそれをコピーして貼り付けようとしました。それは素晴らしいエリアをカバーしています! –

+0

logcatをフィルタリングして、必要な情報のみを抽出します。 –

答えて

0

良いアプローチは、アプリケーションのクラスファイル内のすべてのあなたの書体を置くことです。 onCreate関数でそれらを初期化し、そのインスタンスを任意のアクティビティまたはフラグメントのパブリック変数として使用します。 一度やってください。複数回使用してください。

更新

マニフェストファイル:

<application 
    android:name=".App" 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
... 
</application> 

は、名前のAppでファイルを作成し、任意の場所で

private static final String OPEN_SANS_COND_BOLD = "fonts/OpenSans-CondBold.ttf"; 
public static Typeface openSansCondBold; 

public class App extends Application { 

    @Override 
    public void onCreate() { 
     super.onCreate(); 

     openSansCondBold = Typeface.createFromAsset(getAssets(), OPEN_SANS_COND_BOLD); 
    } 
} 

そして、私たちにそれを追加します。

textView.setTypface(App.openSansCondBold); 
  • お好みの書体を使用するには、資産フォルダに
+0

申し訳ありませんが、私はあなたを良くしませんでした。私のコードでは、1つのクラスと1つのonCreateメソッドしかありません。どこで初期化しますか? –

+0

あなたは書体キャッシュを使用し、必要なときに書体を初期化する必要があります。https://github.com/dlew/android-utils/blob/master/library/src/com/danlew/utils/FontCache.java – oiZo

+0

私は、これを行ったか Fontcache fc = new Fontcache(); タイプフェイスf = fc.getTypeface(this、 "bogie.tff"); TextView F =(TextView)findViewById(R.id.alo); F.setTypeface(f); まだ動作していません –

関連する問題