Я использую Canvas.drawBitmap () для рендеринга файла png в пользовательский вид, который я создал (создавая собственную кнопку).Все работает хорошо, за исключением того, что PNG имеет прозрачный фон в фотошопе, но он не выглядит прозрачным в моем макете Android.Макет является элементом списка.
Я создаю изображение с помощью:
`BitmapFactory.Options opt = new BitmapFactory.Options();
opt.inPreferredConfig = Config.ARGB_8888;
this.image = BitmapFactory.decodeResource(context.getResources(), imageResId, opt);`
Я отображаю изображение с помощью:
`protected void onDraw(Canvas canvas)
{
canvas.drawColor(Color.TRANSPARENT);
canvas.drawBitmap(image, WIDTH_PADDING / 2, HEIGHT_PADDING / 2, null);
}`
На данный момент WIDTH_PADDING и HEIGHT_PADDING равны 0, но я недумаю, что это актуально.
Сам PNG создан в Photoshop.Я только что сделал Новый файл -> Прозрачный фон -> И нарисовал красный овал, затем сохранил как PNG. PNG появляется с белым, где я ожидаю, что он будет прозрачным.
Файл Photoshop Файл фотошопа http://www.supercars.net/bb/redovalbutton.png
Просмотр Android Файл фотошопа http://www.supercars.net/bb/myview.png
Я вызываю его в своем xml с помощью:
com.busanbar.busanbardev.pmchat.PMCommentResendButton
android:id="@+id/resendButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true"
android:focusableInTouchMode="true"
android:layout_weight="1"
Как я могу сделать белый цвет прозрачным, чтобы я мог видеть текстуру серого фона в моем контейнере списка?