png изображение появляется с серым фоном в android

У меня есть несколько кнопок изображения png, которые я использую в своем приложении. Но они появляются с серым фоном на моей странице. Всегда ли android показывает серый фон для прозрачного? Есть ли обойти?
Вот как это было раньше.

enter image description here
вот как это показано после того, как я сделал # ff000000 правки

enter image description here


вот как я хочу это показать.
EDIT:
Ошибка при использовании #FF:
значение цвета не действует ... должно быть #РГБ #формате ARGB, #в rrggbb или #была aarrggbb (на 'фоне' со значением '#ФФ'). главный.в XML

6 ответов


@android: цвет / прозрачный. Фениксблейд был близко.


Если изображение прозрачно, за изображением не должно быть ничего показано.

цвета по умолчанию варьируются от дистрибутива к дистрибутиву. Цветовая схема / тема для телефона HTC будет отличаться от телефона Motorola или эмулятора.

Если вы хотите убедиться, что представление имеет прозрачный фон, задайте в XML-коде для этого представления следующее:

android:background="@android:color/transparent"

Это должно гарантировать, что фон полностью прозрачен.


строка кода в ImageView или ImageButton в XML-файле на самом деле:

android:background="@android:color/transparent"

Я пишу это, чтобы помочь кому-то, кто не знаком с платформой и не будет связывать два ответа выше.


я обнаружил, что это происходит, если у вас есть android:src="@drawable/mypngimage" в вашем xml-файле. Вместо этого, если вы используете фон, то серая область уходит, и она ведет себя так, как ожидалось. android:background="@drawable/mypngimage"


пожалуйста, проверьте, является ли ваше изображение 32-битной глубины или нет. После этого вставьте этот код в представление изображения:android:background="@android:color/transparent". Чтобы сделать ваше изображение прозрачным откройте Adobe Photoshop или Illustrator, откройте файл (т. е. ваше изображение) и нажмите Файл и нажмите кнопку Экспорт - сохранить как веб (наследие), отметьте прозрачный и сохраните его.


также вы можете использовать #50FFFFFF (aarrggbb). в этом формате aa-это альфа-канал, который будет частотой прозрачности. Поэтому, если вы используете цвет выше, вы получаете 50% прозрачный белый фон.