Android 在AppWidget中,文本不是在位图上方的画布上绘制的

Android 在AppWidget中,文本不是在位图上方的画布上绘制的,android,android-canvas,android-bitmap,android-appwidget,Android,Android Canvas,Android Bitmap,Android Appwidget,我想在位图上添加文本,并在应用程序小部件的ImageView中进行设置,以下是我的代码: RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget); Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.img); Canvas canvas = new Canvas(bitmap.copy(

我想在位图上添加文本,并在应用程序小部件的ImageView中进行设置,以下是我的代码:

RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget);
Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.img);
Canvas canvas = new Canvas(bitmap.copy(Bitmap.Config.ARGB_8888, true));
Paint paint = new Paint();
paint.setStyle(Paint.Style.FILL);
paint.setColor(Color.WHITE);
paint.setTextSize(20);
paint.setTextAlign(Paint.Align.CENTER);
paint.setAntiAlias(true);
//int xPos = (canvas.getWidth() / 2);
//int yPos = (int) ((canvas.getHeight() / 2) - ((paint.descent() + paint.ascent()) / 2));
int xPos = (canvas.getWidth() / 2);
int yPos = (canvas.getHeight() / 2);
canvas.drawText("My Text", xPos, yPos, paint);
views.setImageViewBitmap(R.id.widgetImg, bitmap);
appWidgetManager.updateAppWidget(appWidgetId, views);
但在AppWidget中,它只是一个简单的图像(
R.drawable.img
),上面没有文本。 有人知道这个问题吗?

根据刚才的回答,这句话变了:

Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.img);
Canvas canvas = new Canvas(bitmap.copy(Bitmap.Config.ARGB_8888, true));
致:

Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.img);
bitmap = bitmap.copy(Bitmap.Config.ARGB_8888, true);
Canvas canvas = new Canvas(bitmap);