1

クラスが拡張RelativeLayoutおよび実装するアプリを作成していOnClickListenerますが、私の問題は、それを設定できないことですTypeFaceException

public class Viewnew extends RelativeLayout implements OnPageChangeListener {
Context mContext;

そして私が使うとき

Typeface tf=Typeface.createFromAsset(mContext.getAssets(), "fonts/trbuc.ttf");

で例外が発生しmContextています。例外は次のとおりです。

E/AndroidRuntime(15203): Caused by: java.lang.RuntimeException: native typeface cannot be made
E/AndroidRuntime(15203): at android.graphics.Typeface.<init>(Typeface.java:240)
E/AndroidRuntime(15203):at android.graphics.Typeface.createFromAsset(Typeface.java:214)
4

4 に答える 4

1

そのために次のコードを使用します。

// Font path
String fontPath = "fonts/trbuc.ttf";

// text view label
TextView txtGhost = (TextView) findViewById(R.id.mTxtViewCustomFont);

// Loading Font Face
Typeface tf = Typeface.createFromAsset(mContext.getAssets(), fontPath);

// Applying font
txtGhost.setTypeface(tf);
于 2012-06-13T07:24:46.917 に答える
1

への変更

Typeface tf=Typeface.createFromAsset(getContext().getAssets(), "fonts/trbuc.ttf");
于 2012-06-13T07:20:31.283 に答える
0

.ttfの代わりに.otfを使用しましたが、うまくいきました。

于 2012-06-14T11:45:57.540 に答える
0

これは NullPointer ではないため、コンテキストは明らかに問題ではありません。

問題は、指定しているフォント ファイルです。まず、パスが正しいことを確認します。そうである場合は、別のフォント ファイルを読み込んでみて、それが機能するかどうかを確認してください。Android はすべてのフォントを読み込めません。うるさいです。類似のフォントが見つかったら、それを試してみてください。これがうまくいくことを願っています。

于 2012-06-13T07:23:14.997 に答える