android.R.color.transparent не полностью прозрачный - PullRequest
10 голосов
/ 03 апреля 2012

В моем приложении я применяю прозрачный фон к своему ListView CustomListItem во время выполнения.Для этого я использую convertView.setBackgroundColor(android.R.color.transparent);.Это работает и показывает прозрачность.Но это не совсем прозрачно, поскольку на заднем плане есть какая-то тень.Я также попытался поставить свой собственный прозрачный цвет со значениями #80000000 и #00000000, но результат хуже.Что я могу сделать, чтобы получить полностью прозрачный цвет?

Ответы [ 5 ]

25 голосов
/ 03 апреля 2012

Установите этот атрибут для вашего списка в xml-файле

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

, а также примените прозрачный фон к CustomListItem вашего ListView во время выполнения.Для этого у вас есть,

convertView.setBackgroundColor(Color.TRANSPARENT);

Спасибо

23 голосов
/ 03 апреля 2012

android.R.color.transparent - это идентификатор ресурса (ссылающийся на определение прозрачного цвета) - View.setBackgroundColor(int) ожидает фактический цвет int.

Используйте взамен View.setBackgroundResource (int) , чтозагрузит фактический цвет из ресурсов.

5 голосов
/ 03 апреля 2012
convertView.setBackgroundColor(Color.argb(0, 0, 0, 0));

ИЛИ

convertView.setBackgroundColor(Color.parseColor("#00000000"));
4 голосов
/ 19 августа 2013

Используйте это сейчас в своих XML-файлах, когда вам нужна прозрачность в ваших представлениях:

android:background="@null"

Вы получите более высокую производительность.

1 голос
/ 03 апреля 2012

Попробуйте:

convertView.setBackgroundColor(Color.argb(0, 0, 0, 0));
...