it-swarm.com.de

Android Transparent TextView?

Einfach, wie macht man eine Textansicht transparent? (Nicht vollständige Transparenz)

Ich habe die Dokumente und das StackNetwork durchsucht und konnte es nicht finden? Ich denke, es gibt so etwas.

Vielen Dank.

UPDATE

Dies ist der XML-Code:

<LinearLayout
    xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:layout_width="fill_parent"
    Android:layout_height="fill_parent"
    Android:gravity="center_horizontal"
    Android:orientation="vertical"
    Android:background="@drawable/background">

    <ImageView 
    Android:layout_width="fill_parent"
    Android:layout_height="wrap_content"
    Android:id="@+id/header"
    Android:src="@drawable/logo1"
    />
    <ListView Android:id="@Android:id/list"
    Android:layout_width="fill_parent"
    Android:layout_height="fill_parent"
    Android:layout_weight="1"
    Android:paddingRight="5dp"
    Android:scrollbarStyle="outsideOverlay"
    Android:cacheColorHint="#00000000" />


    <TextView
    Android:id="@+id/footer"
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    Android:textSize="25sp"
    Android:singleLine="true"
    Android:background="#07000000"
    Android:textColor="#FFFFFF"
    Android:text="rrrrr" />

 </LinearLayout>

Ich möchte, dass die FußzeileTextView transparent ist so that the ListView items can be seen while scrolling

42
iTurki

Bitte probieren Sie diesen Code aus.

<TextView 
   Android:id="@+id/txtview1"
   Android:layout_width="wrap_content" 
   Android:background="@drawable/bg_task" 
   Android:layout_height="wrap_content" 
   Android:textSize="14sp" 
   Android:singleLine="true"
   Android:textColor="#FFFFFF" />

Verwendet man das Hintergrundbild als transparent, so kann das gelöst werden.

ODER

Android:background="#07000000"

ODER

Bitte versuchen Sie es unten ...

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:layout_width="fill_parent" Android:layout_height="fill_parent"
    Android:gravity="center_horizontal" Android:orientation="vertical"
    Android:background="@drawable/main_bg">
    <ImageView Android:layout_width="fill_parent"
        Android:layout_height="wrap_content" Android:id="@+id/header"
        Android:src="@drawable/btn_complete" />
    <RelativeLayout Android:layout_width="fill_parent"
        Android:layout_height="fill_parent">
        <ListView Android:id="@+id/list" Android:layout_width="fill_parent"
            Android:layout_height="fill_parent" Android:layout_weight="1"
            Android:paddingRight="5dp" Android:scrollbarStyle="outsideOverlay"
            Android:cacheColorHint="#00000000" />
        <TextView Android:id="@+id/footer" Android:layout_width="wrap_content"
            Android:layout_height="wrap_content" Android:textSize="25sp"
            Android:singleLine="true" Android:background="#07000000"
            Android:textColor="#FFFFFF" Android:text="rrrrr"
            Android:layout_centerInParent="true"
            Android:layout_alignParentBottom="true" />
    </RelativeLayout>
</LinearLayout>
39
Nikhil

Weitere Informationen finden Sie in der Dokumentation zur Android-Farbressource .

Grundsätzlich haben Sie die Möglichkeit, die Transparenz (Deckkraft) und die Farbe entweder direkt im Layout oder über Ressourcenreferenzen einzustellen.

Der Hex-Wert, auf den Sie ihn festlegen, besteht aus 3 bis 4 Teilen:

  • Alpha (Deckkraft), das bezeichne ich als aa

  • Rot, ich werde es als rr bezeichnen

  • Grün, ich werde es als gg bezeichnen

  • Blau, ich werde es als bb bezeichnen

Ohne einen Alpha-Wert (Transparenz):

Android:background="#rrggbb"

oder als Ressource:

<color name="my_color">#rrggbb</color>

Mit einem Alpha-Wert (Transparenz):

Android:background="#aarrggbb"

oder als Ressource:

<color name="my_color">#aarrggbb</color>

Der Alpha-Wert für vollständige Transparenz ist 00 und der Alpha-Wert für keine Transparenz ist [~ # ~] ff [~ # ~] .

Im Folgenden finden Sie alle Hexadezimalwerte:

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

Sie können mit Werten experimentieren, die dazwischen liegen.

99
Marmoy

Unterhalb des Codes für Schwarz: -

<color name="black">#000000</color>

Wenn ich jetzt die Deckkraft verwenden möchte, können Sie den folgenden Code verwenden: -

 <color name="black">#99000000</color> 

und unten für Opazitätscode: -

Hexadezimal-Deckkraftwerte

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

siehe Farben verstehen unter Android (sechs Zeichen)

44
duggu

Benutze das:

Android:background="@Android:color/transparent"
24
darvinda

<TextView Android:alpha="0.3" ..., beispielsweise.

10
ᆼᆺᆼ

Programmgesteuert einstellen:

setBackgroundColor(Color.TRANSPARENT);

Für mich musste ich es auch auf Color.TRANSPARENT im übergeordneten Layout einstellen.

5
Aaron

Diese Antwort ist zwar sehr spät, könnte aber anderen Entwicklern helfen, also poste ich sie hier.

Die obigen Antworten zeigen nur, wie der transparente Hintergrund von TextView festgelegt wird. Wir können transparentes Textview-Backcgorund auf zwei Arten erreichen:

  1. Durch Festlegen eines Opazitätscodes wie # 88000000 in Android: Hintergrundattribut
  2. Indem Sie das Attribut Android: alpha = "0.5" auf TextView setzen

Der zweite Ansatz ist besser, da er die Flexibilität bietet, Hintergrundfarben und Deckkraft für Widgets mit Android einzustellen: alpha = "0.2"

Beispiel

<TextView
        Android:id="@+id/tv_name"
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        Android:background="@color/black"
        Android:alpha="0.3"
        Android:textColor="@color/white"
        Android:textStyle="bold"/>
5
Geek

Wenn Sie nach etwas wie der Textansicht auf dem Bild in der Pulse-App suchen, tun Sie dies

 Android:background="#88000000"
Android:textColor="#ffffff"
3
Slartibartfast

Alle antworten korrekt über die Transparenz, hören aber nicht auf das, was der Typ in Bezug auf die Liste benötigt, die sich hinter der Fußzeile befindet.

Sie müssen die Fußzeile zu einem Teil Ihres ListView machen. Momentan läuft die Liste nicht hinterher, da das Layout der ListView nicht hinter der Fußzeilenansicht mit der Transparenz liegt. Machen Sie ein RelativeLayout und positionieren Sie die Transparenz unten.

1
Alex Robęrts

Versuchen Sie, Android:background="#00000000" in TextView. Durch Einstellen von Alpha der Farbe 00 wird der Hintergrund transparent.

Ich habe das noch nicht ausprobiert, aber es sollte funktionieren.

1
Udayan

versuchen Sie, die Transparenz mit dem Android-Studio-Designer in activity_main.xml einzustellen. Wenn Sie möchten, dass es transparent ist, schreiben Sie es zum Beispiel wie folgt für Weiß: Weiß: #FFFFFF, mit 50% Transparenz: # 80FFFFFF Dies ist für Kotlin, obwohl Sie nicht sicher sind, ob dies für Basic Android (Java).

1
Aaron

Für den Fall, dass jemand dies in der Programmierweise tun möchte! Gehen Sie folgendermaßen vor: Aktualisieren Sie die Farbdatei in Ihrem Werteverzeichnis damit.

<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="transparent">#00ffffff</color> <!--This is the transparency line-->
</resources>

rufen Sie dann die Transparenz programmatisch auf

your_textview.setBackgroundResource(R.color.transparent);
1
The Dead Guy

Hi Bitte versuchen Sie es mit dem unten stehenden Farbcode als Hintergrund für die Textansicht.

Android:background="#20535252"

0
Chirag