Ich verwende eine Webansicht, in der ich eine Bildansicht hinzufüge. Wie kann ich den Hintergrund dieser Bildansicht auf transparent setzen?
Ich habe das versucht:
mImageview.setBackgroundResource(R.color.trans);
Wo trans
→ <color name="trans">#00000000 </color>
.
android
android-widget
Schlamm
quelle
quelle
Antworten:
Stellen Sie in Ihrem XML das
Background
Attribut auf eine beliebige Farbe, einen beliebigenWhite(#FFFFFF)
Farbton oder einen beliebigenBlack(#000000)
Farbton ein. Wenn Sie Transparenz wünschen, setzen Sie einfach 80 vor den eigentlichen Hash-Code:Dadurch wird jede gewünschte Farbe in eine transparente geändert. :)
quelle
View.setBackgroundResource(R.drawable.something)
?View.getBackground().setAlpha(50)
. Einfacher geht es nicht, oder? : o) Trotzdem danke für deine Hilfe !!#10000000
Schwarz mit weniger Transparenz -#99000000
Sie können den Hintergrund für jedes Layout, jede Ansicht oder jede Komponente transparent machen, indem Sie diesen Code in XML hinzufügen:
quelle
android:background="#00ffffff"
Zusätzlich zu dem, was Harshad erwähnte:
An jeden hexadezimalen Farbcode können zwei hexadezimale Zeichen angehängt werden. Die ersten beiden Zeichen in einem 8-stelligen Hex-Farbcode stehen für die Deckkraft in Android.
Die zwei hexadezimalen Zeichen können zwischen 00 und FF liegen. Zum Beispiel,
Auf diese Weise können Sie jede Farbe auf eine beliebige Transparenzstufe ändern.
So ermitteln Sie das hexadezimale Präfix anhand eines Prozentsatzes:
Teilen Sie die Prozentzahl durch 100 und multiplizieren Sie sie mit 255, um den Dezimalwert zu erhalten. Konvertieren Sie die Dezimal in hexadezimal hier .
Zum Beispiel für 50% 50/100 * 255 = 127. Über den Link erhalten wir den Hexadezimalwert 7F.
Quelle: Android: So erstellen Sie einen transparenten oder undurchsichtigen Hintergrund
quelle
Wenn Sie 20% oder 30% Transparenz hinzufügen möchten, sollten Sie dem Hexadezimalcode zwei weitere Zeichen voranstellen, z. B. CC.
Hinweis
android:background="#CCFF0088"
in XMLDabei ist CC der Alpha-Wert, FF der rote Faktor, 00 der grüne Faktor und 88 der blaue Faktor.
Einige Deckkraftcodes:
Hex-Opazitätswerte
Sie können die Deckkraft auch programmgesteuert wie folgt einstellen:
Stellen Sie die Deckkraft zwischen 0 (vollständig transparent) und 255 (vollständig undurchsichtig) ein. Der 127,5 ist genau 50%.
Mit der angegebenen Formel können Sie eine beliebige Transparenzstufe erstellen. Wenn Sie halbtransparent wollen:
Und für 25% Transparenz:
quelle
Verwenden Sie den folgenden Code für Schwarz:
Wenn Sie jetzt die Deckkraft verwenden möchten, können Sie den folgenden Code verwenden:
Und das Folgende für den Deckkraftcode:
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
quelle
Es gibt bereits eine vordefinierte Konstante. Verwenden Sie
Color.TRANSPARENT
.quelle
Color.TRANSPARENT
jedoch auf0x00000000
(nicht der erwartete vollständig undurchsichtige Wert0xFF000000
) festgelegt. Je nachdem, wie Sie vorgehen, kann diese Konstante möglicherweise nicht wirklich zur Erzielung von Transparenz beitragen! Immer noch +1 für die Empfehlung einer Konstante!In Android ist bereits eine transparente Version integriert: R.color.transparent. http://developer.android.com/reference/android/R.color.html#transparent
Ich denke jedoch, dass Sie den Hintergrund des Bildes, das Sie in WebView platzieren, transparent machen möchten, z. B. mit einem transparenten PNG anstelle des ImageView-Hintergrunds. Wenn das tatsächliche Bild überhaupt nicht durchsichtig ist, kann der ImageView-Hintergrund nicht durchsichtig werden.
quelle
Falls Sie es im Code wollen, einfach:
quelle
Versuchen Sie diesen Code :)
Es ist ein vollständig transparenter Hexa-Code - "# 00000000"
quelle
Alternativ können Sie die Ressourcen-ID auch mit dem folgenden Code analysieren:
quelle
Legen Sie in Ihrer XML-Datei ein Attribut "Alpha" fest.
sowie
Sie können einen beliebigen Wert zwischen 0,0 und 1,0 als Dezimalzahl angeben, um die erforderliche Transparenz anzuwenden. Zum Beispiel ist 0,5 Transparenz ideal für deaktivierte Komponenten
quelle
Für diejenigen, die immer noch mit diesem Problem konfrontiert sind, können Sie dies versuchen
element.getBackground().setAlpha(0);
quelle
NullPointerException: Attempt to invoke virtual method 'void android.graphics.drawable.Drawable.setAlpha(int)' on a null object reference
element
sehen, ob es sich um ein Nullobjekt handeltVerwenden Sie für vollständige Transparenz Folgendes:
Als ich es mit # 80000000 versuchte, bekam ich eine schwarze transparente Überlagerung, die ich nicht will. Versuchen Sie, die ersten beiden Ziffern zu ändern. es steuert den Grad der Transparenz, wie z
quelle
In Android Studio ist es sehr einfach, Farbe und Deckkraft mit einem integrierten Tool anzupassen:
quelle
Ein einfacher Weg:
quelle
Eine andere Arbeitsoption, auf die ich gestoßen bin, ist das Festlegen
android:background="@null"
quelle
Sie können auch
View.setAlpha(float)
die Sichtbarkeit präzise ändern.0 wäre transparent, 1 vollständig sichtbar. ;)
quelle
Versuchen Sie, den folgenden Code zu verwenden. Es wird Ihnen in vollem Umfang oder mehr helfen.
Eine XML-Datei, die diesen Code zum Festlegen der Hintergrundfarbe verwendet:
oder
Oder Sie können es auch programmgesteuert einstellen.
Sie können diesen Code auch programmgesteuert verwenden:
Auch dieser Code zum programmgesteuerten Einstellen der Hintergrundfarbe:
Dieser Code für das gleiche programmatisch:
Die Farbe hängt von Ihrer Wahl ab, welche Farbe Sie für transparent verwenden möchten. Verwenden Sie meistens eine weiße oder #FFFFFF Farbe.
In Bezug auf
R.drawable.llabackground
: Diese Codezeile ist für Ihren Stil des Hintergrunds, wie etwas Besonderes oder anderes für Ihren Zweck. Sie können dies auch verwenden.quelle
Wenn Sie ein zeichnbares XML-Bild verwenden, können Sie es wie in der Abbildung unten gezeigt transparent machen oder einen Farbcode verwenden:
quelle
Farbdefinitionen mit Transparenzinformationen können in der Form vorliegen
#AARRGGBB
oder#ARGB
.Sie können auch den kürzeren Wert für vollständige Transparenz verwenden: # 0000 .
Andere Werte sind zB:
quelle
quelle
Versuche dies:
Für Transparenz 000000 = Schwarz können Sie diese sechs Zahlen für die gewünschte Farbe ändern.
quelle