如何将textview的BackgroundColor设置为Paint而不是Color?

时间:2012-04-28 15:39:00

标签: java android colors paint

好的,我知道我可以通过textview.setBackgroundColor(R.color.darkgrey)或其他颜色设置textview的背景颜色,但我的情况略有不同。我有一个具有三个属性的对象:Name,Value和Paint。我用这个对象绘制了一个饼图,并将一堆textview作为图形的图例。我现在要做的就是将背景颜色设置为我用于图表的Paint。我使用android.graphics.Paint的setARGB方法设置了Paint。我已经通过android笔记试图找到一种转换方法,将Paint改为颜色,但没有运气。

如何使用Paint?

为textview设置setBackgroundColor()?

1 个答案:

答案 0 :(得分:0)

如果你想用画布绘制文字,你应该这样做:

public Bitmap myDrawText(Context context, String text, Typeface typeface, int  textSize, int width, int height) {
    Bitmap myBitmap = Bitmap.createBitmap(width, height,      Bitmap.Config.ARGB_8888);
    Canvas myCanvas = new Canvas(myBitmap);
    Paint paint = new Paint();
    paint.setAntiAlias(true);
    paint.setSubpixelText(true);
    paint.setTypeface(typeface);
    paint.setStyle(Paint.Style.FILL);
    paint.setColor(Color.WHITE);
    paint.setTextSize(textSize);
    paint.setTextAlign(Align.CENTER);
    myCanvas.drawText(text, (width / 2), 40, paint);
    return myBitmap;
}

现在你有了一个文本的位图!

    ImageView iv = findViewById(R.id.some_image);
    iv.setImageBitmap(myBitmap);