0

こんにちは、ご協力ありがとうございます。

アプリ ウィジェットでカスタム フォントを使用する必要があります。

通常、私は次のようなものを使用します:

TextView txt = (TextView) findViewById(R.id.custom_font);  
Typeface font = Typeface.createFromAsset(getAssets(), "myfont.ttf");  
txt.setTypeface(font);

ただし、RemoteViews でsetTypeface(font)を呼び出すことはできません。

何か提案をお願いします。

ありがとう!

4

2 に答える 2

3

次の方法を使用できます。

フォントをキャンバスにレンダリングし、それをビットマップに渡し、それを ImageView に割り当てます。

public Bitmap buildUpdate(String text) 
{
    Bitmap myBitmap = Bitmap.createBitmap(10, 10, Bitmap.Config.ARGB_4444);
    Canvas myCanvas = new Canvas(myBitmap);
    Paint paint = new Paint();
    Typeface mytypeface = Typeface.createFromAsset(this.getAssets(),"fontname.ttf");
    paint.setAntiAlias(true);
    paint.setSubpixelText(true);
    paint.setTypeface(clock);
    paint.setStyle(Paint.Style.FILL);
    paint.setColor(Color.WHITE);
    paint.setTextSize(65);
    paint.setTextAlign(Align.CENTER);
    myCanvas.drawText(text, 80, 60, paint);
    return myBitmap;
}

次のように使用します。

String text = "This is my text";
RemoteViews views = new RemoteViews(getPackageName(), R.layout.my_widget_layout);
views.setImageViewBitmap(R.id.my+imageview, buildUpdate(text));

これが役立つことを願っています:)

于 2014-03-21T15:42:02.393 に答える