Установить прозрачный фон в ImageView в Андроид
Я использую веб-представление, в котором я добавляю представление изображения. Как я могу установить фон этого изображения на прозрачную?
Я попытался это:
mImageview.setBackgroundResource(R.color.trans);
здесь trans
→ <color name="trans">#00000000 </color>
.
22 ответа:
в вашем XML установите
Background
атрибут любого цвета,White(#FFFFFF)
тени илиBlack(#000000)
тени. Если вы хотите прозрачности, просто поставьте 80 перед фактическим хэш-кодом:#80000000
это изменит любой цвет, который вы хотите, чтобы прозрачный.. :)
вы можете установить прозрачный фон любого макета, любого представления или любого компонента, добавив этот код в XML:
android:background="@android:color/transparent"
В дополнение к тому, что Harshad упомянул:
к любому шестнадцатеричному цветовому коду можно добавить два шестнадцатеричных символа. Первые два символа в 8-значном шестнадцатеричном цветовом коде представляют его непрозрачность в Android.
два шестнадцатеричных символа могут варьироваться от 00 до FF. Например,
- обычный непрозрачный черный шестигранник - "#000000"
- полностью прозрачный - "#00000000"
- полностью непрозрачный "#FF000000"
- 50% прозрачный - "#7F000000"
таким образом, вы можете изменить любой цвет на любой уровень прозрачности.
чтобы найти шестнадцатеричный префикс из процента:
разделить число процентов на 100 и умножить на 255, чтобы получить десятичное значение. Преобразуйте десятичное число в шестнадцатеричное здесь.
например, для 50%, 50/100 * 255 = 127. Используя ссылку, мы получаем шестнадцатеричное значение 7Ф.
источник: Android: Как создать прозрачный или непрозрачный фон
если вы хотите добавить 20% или 30% прозрачности, вы должны предварительно добавить еще два символа в шестнадцатеричный код, например CC.
Примечание
android:background="#CCFF0088"
в XMLгде СС-значение альфа, ФФ-Красная фактором, 00 Зеленый фактор, а 88-это синий фактор.
код непрозрачность:
Шестнадцатеричные Значения Непрозрачности
100% — FF 95% — F2 90% — E6 85% — D9 80% — CC 75% — BF 70% — B3 65% — A6 60% — 99 55% — 8C 50% — 80 45% — 73 40% — 66 35% — 59 30% — 4D 25% — 40 20% — 33 15% — 26 10% — 1A 5% — 0D 0% — 00
вы также можете установить прозрачность программно как:
yourView.getBackground().setAlpha(127);
установить прозрачность между 0 (полностью прозрачный) до 255 (полностью непрозрачный). 127,5-это ровно 50%.
вы можете создать любой уровень прозрачности, используя данную формулу. Если вы хотите полупрозрачный:
16 |128 Where 128 is the half of 256. |8 -0 So it means 80 is half transparent.
и для прозрачности 25%:
16 |64 Where 64 is the quarter of 256. |4 -0 So it means 40 is quarter transparent.
используйте приведенный ниже код для черного:
<color name="black">#000000</color>
теперь, если вы хотите использовать непрозрачность, то вы можете использовать следующий код:
<color name="black">#99000000</color>
и ниже для кода непрозрачности:
100% - FF
95% - F2
90% - E6
85% - D9
80% - CC
75% - BF
70% - B3
65% - A6
60% - 99
55% - 8C
50% - 80
45% - 73
40% - 66
35% - 59
30% - 4D
25% - 40
20% - 33
15% - 26
10% - 1A
5% - 0D
0% - 00
уже есть прозрачный встроенный в Android: R. цвет.прозрачный. http://developer.android.com/reference/android/R.color.html#transparent
но я думаю, что вы можете сделать фон изображения, которое вы помещаете в WebView прозрачным, например, с прозрачным PNG, а не фоном ImageView. Если фактическое изображение не является вообще прозрачным, то фон ImageView не может быть виден через него.
в случае, если вы хотите его в код, просто:
mComponentName.setBackgroundColor(Color.parseColor("#80000000"));
или, в качестве альтернативы, проанализируйте идентификатор ресурса со следующим кодом:
mComponentName.setBackgroundColor(getResources().getColor(android.R.color.transparent));
для тех, кто еще сталкивается с этой проблемой, вы можете попробовать это
element.getBackground().setAlpha(0);
для полной прозрачности используйте следующее:
#00000000
когда я попытался с #80000000 я получил черный прозрачный оверлей, который я не хочу. Попробуйте изменить первые две цифры; он контролирует уровень прозрачности, как
#00000000 #10000000 #20000000 #30000000
в XML-файле задайте атрибут "Альфа"
например
android:alpha="0.0" // for transparent android:alpha="1.0" // for opaque
вы можете задать любое значение от 0,0 до 1,0 в десятичном формате, чтобы применить необходимую прозрачность. Например, 0,5 прозрачности идеально подходит для отключенного компонента
вы также можете использовать
View.setAlpha(float)
чтобы точно изменить видимость.0 будет прозрачным, 1 полностью видимым. ;)
попробуйте использовать следующий код. Это поможет вам в полной мере или больше.
A .xml-файл, предназначенный для использования этого кода для установки цвета фона:
android:background="#000000"
или
android:background="#FFFFFF"
или вы можете установить его программно, а также.
также вы можете использовать этот код:
image.setBackgroundDrawable(getResources().getDrawable( R.drawable.llabackground));
также этот код для установки цвета фона, а также программно:
image.setBackgroundColor(Color.parseColor("#FFFFFF"));
этот код для того же программно:
image.setBackgroundColor(getResources().getColor(Color.WHITE));
цвет зависит от вашего выбора, какой цвет вы хотите использовать для прозрачных. В основном используйте белый или #ffffff цвет.
о
R.drawable.llabackground
: эта строка кода предназначена для вашего стиля фона, как что-то особенное или другое для вашей цели. Вы также можете использовать это.