Я використовую веб-перегляд, в якому додаю зображення. Як я можу встановити фон цього перегляду зображення прозорим?
Я спробував це:
mImageview.setBackgroundResource(R.color.trans);
Де trans
→ <color name="trans">#00000000 </color>
.
Я використовую веб-перегляд, в якому додаю зображення. Як я можу встановити фон цього перегляду зображення прозорим?
Я спробував це:
mImageview.setBackgroundResource(R.color.trans);
Де trans
→ <color name="trans">#00000000 </color>
.
Відповіді:
У вашому XML встановіть Background
атрибут будь-якого кольору, White(#FFFFFF)
відтінку або Black(#000000)
відтінку. Якщо ви хочете прозорість, просто поставте 80 перед фактичним хеш-кодом:
#80000000
Це змінить будь-який колір, який ви хочете, на прозорий .. :)
View.setBackgroundResource(R.drawable.something)
?
View.getBackground().setAlpha(50)
. Не може бути простіше, правда? : o) У будь-якому випадку, дякую за допомогу !!
#10000000
Чорний з меншою прозорістю - #99000000
Ви можете встановити фон прозорим для будь-якого макета, будь-якого перегляду чи будь-якого компонента, додавши цей код у XML:
android:background="@android:color/transparent"
android:background="#00ffffff"
Окрім того, що згадував Харшад:
Два шістнадцяткових символи можуть бути додані до будь-якого шістнадцяткового коду кольорів. Перші два символи в 8-значному шістнадцятковому кольоровому коді відображають його непрозорість в Android.
Два шістнадцяткові символи можуть бути від 00 до FF. Наприклад,
Таким чином ви можете змінити будь-який колір на будь-який рівень прозорості.
Щоб знайти шістнадцятковий префікс від відсотка:
Розділіть відсоткове число на 100 і помножте на 255, щоб отримати десяткове значення. Перетворення десяткових чисел в шістнадцяткові тут .
Наприклад, для 50%, 50/100 * 255 = 127. За допомогою посилання ми отримуємо шістнадцяткове значення 7F.
Якщо ви хочете додати 20% або 30% прозорості, вам слід попередньо встановити ще два символи до шістнадцяткового коду, наприклад, CC.
android:background="#CCFF0088"
в XML
де CC - значення альфа, FF - червоний фактор, 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% - ФФ
95% - F2
90% - Е6
85% - D9
80% - КК
75% - BF
70% - B3
65% - А6
60% - 99
55% - 8С
50% - 80
45% - 73
40% - 66
35% - 59
30% - 4D
25% - 40
20% - 33
15% - 26
10% - 1А
5% - 0D
0% - 00
Вже є заздалегідь визначена константа. Використовуйте Color.TRANSPARENT
.
Color.TRANSPARENT
встановлюється 0x00000000
(не очікуване повністю непрозоре 0xFF000000
), тому залежно від того, як ви це зробите, ця константа насправді не може допомогти досягти прозорості! Ще +1 для рекомендування постійної!
В Android вже є вбудований прозорий: R.color.transparent. http://developer.android.com/reference/android/R.color.html#transparent
Але я думаю, ви можете зробити фон зображення, яке ви розміщуєте у WebView, прозорим, наприклад, прозорим PNG, а не фоном ImageView. Якщо власне зображення взагалі не проглядається, то фон ImageView не може бути видно через нього.
Якщо ви хочете його в коді, просто:
mComponentName.setBackgroundColor(Color.parseColor("#80000000"));
У своєму XML-файлі встановіть атрибут "Альфа"
як от
android:alpha="0.0" // for transparent
android:alpha="1.0" // for opaque
Ви можете надати будь-яке значення від 0,0 до 1,0 в десятковій частині, щоб застосувати необхідну прозорість. Наприклад, прозорість 0,5 ідеально підходить для відключеного компонента
Для тих, хто все ще стикається з цією проблемою, ви можете спробувати це
element.getBackground().setAlpha(0);
NullPointerException: Attempt to invoke virtual method 'void android.graphics.drawable.Drawable.setAlpha(int)' on a null object reference
element
чи це нульовий об’єкт
Для повної прозорості використовуйте наступне:
#00000000
Коли я спробував з # 80000000, я отримав чорну прозору накладку, яку я не хочу. Спробуйте змінити перші дві цифри; він контролює рівень прозорості, як
#00000000
#10000000
#20000000
#30000000
Ще один простий спосіб:
mComponentName.setBackgroundResource(android.R.color.transparent);
Ви також View.setAlpha(float)
можете точно змінити видимість.
0 буде прозорим, 1 повністю видно. ;)
Спробуйте використовувати наступний код. Це допоможе вам повністю або більше.
.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
: Цей рядок коду відповідає вашому стилю фону, як щось особливе або інше за вашим призначенням. Ви також можете використовувати це.
Визначення кольорів з інформацією про прозорість можуть бути у формі
#AARRGGBB
або #ARGB
.
Для повної прозорості можна використовувати і коротше значення: # 0000 .
Інші значення, наприклад:
white grey black
#FFFF #F888 #F000 - full color
#EFFF #E888 #E000
#DFFF #D888 #D000
#CFFF #C888 #C000
#BFFF #B888 #B000
#AFFF #A888 #A000
#9FFF #9888 #9000
#8FFF #8888 #8000
#7FFF #7888 #7000
#6FFF #6888 #6000
#5FFF #5888 #5000
#4FFF #4888 #4000
#3FFF #3888 #3000
#2FFF #2888 #2000
#1FFF #1888 #1000
#0FFF #0888 #0000 - full transparency
ImageView.setBackground(R.drawable.my_background);
ImageView.setBackgroundResource(R.color.colorPrimary);
ImageView.getImageAlpha();
ImageView.setAlpha(125); // transparency
Спробуйте це:
#aa000000
Для прозорості 000000 = чорний, ви можете змінити ці шість цифр на потрібний колір.