png изображение появляется с серым фоном в android
У меня есть несколько кнопок изображения png, которые я использую в своем приложении. Но они появляются с серым фоном на моей странице. Всегда ли android показывает серый фон для прозрачного? Есть ли обойти?
Вот как это было раньше.
вот как это показано после того, как я сделал # ff000000 правки
вот как я хочу это показать.
EDIT:
Ошибка при использовании #FF:
значение цвета не действует ... должно быть #РГБ #формате ARGB, #в rrggbb или #была aarrggbb (на 'фоне' со значением '#ФФ'). главный.в XML
6 ответов
Если изображение прозрачно, за изображением не должно быть ничего показано.
цвета по умолчанию варьируются от дистрибутива к дистрибутиву. Цветовая схема / тема для телефона 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% прозрачный белый фон.