У меня есть список элементов, где я показываю растровое изображение рядом с именем элемента. Это растровое изображение должно быть создано из 2-х изображений, у меня есть фоновое изображение с меньшим фоном, чтобы добавить поверх фона.Android-растровое изображение с двух растровых изображений растровых изображений не видно
Я вижу, что фоновое изображение не присутствует в некоторых моих строках в моем списке. Это непротиворечиво, когда и какая строка имеет комбинированное растровое изображение без фона. Это не всегда одна и та же строка, где объединенное растровое изображение не имеет фона, и это не всегда первая или не всегда последняя строка, в которой растровое изображение не имеет фона. И иногда весь список имеет каждую строку с правильным изображением.
Изображение ниже представляет собой макет, показывающий мою проблему.
Мой код для создания объединенного растрового изображения заключается в следующем.
Bitmap combinedBitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
Canvas combinedCanvas = new Canvas(combinedBitmap);
// Add the first bitmap to the canvas (this is my background and this is what appears to be
// missing on some rows in my list on some occasions)
combinedCanvas.drawBitmap(backgroundBitmap, 0, 0, null);
// my second smaller image, on top of the first image but 1 pixel in
// from the left and 20 pixels down from the top
combinedCanvas.drawBitmap(foregroundBitmap, 1, 20, null);
return combinedBitmap;
Примечание: Мой backgroundBitmap генерируется из растяжимой, используя следующий код
Bitmap backgroundBitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(),
drawable.getMinimumHeight(),
Bitmap.Config.ARGB_8888);
backgroundBitmap.setDensity(resources.getDisplayMetrics().densityDpi);
Canvas canvas = new Canvas(backgroundBitmap);
drawable.draw(canvas);
Любые предложения о том, что у меня неправильно, или даже, где искать, чтобы попытаться решить эту проблему было бы весьма признателен.
EDIT: Я испытал добавление цвета на фоне моих combinedCanvas, чтобы попытаться увидеть, где формирование изображения происходит неправильно, добавив следующий код
// TEMP: fill the canvas in red for now so I can see which combinedBitmaps are missing
// the background image
combinedCanvas.drawColor(Color.RED);
Теперь строки, которые не имеют фона окрашены в красный цвет. Это указывает на то, что приведенный выше код для создания комбинированного холста каким-то образом не добавляет backgroundBitmap. Я проверил, и мое фоновое изображение не равно null для каждой строки в моем списке.
Благодарим вас за ответ, который не слишком отличается от моего кода, поэтому я не вижу, что будет причиной моей проблемы. Мой код работает с перерывами. Мне интересно, если это связано с тем, что у меня есть эти сгенерированные эскизы в списке. – se22as