Domanda

Sto utilizzando una visualizzazione Web in cui aggiungo una visualizzazione immagine.Come posso impostare lo sfondo di questa visualizzazione dell'immagine su trasparente?

Ho provato questo:

mImageview.setBackgroundResource(R.color.trans);

Dove trans<color name="trans">#00000000 </color>.

È stato utile?

Soluzione

Nel vostro XML impostare l'attributo Background a qualsiasi colore, ombra o ombra White(#FFFFFF) Black(#000000). Se si vuole la trasparenza, appena messo 80 prima che il codice hash effettivo:

#80000000

Questo cambierà ogni colore che si desidera una trasparente ..:)

Altri suggerimenti

È possibile impostare lo sfondo trasparente di qualsiasi layout, qualsiasi vista, o qualsiasi componente aggiungendo questo codice XML:

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

In aggiunta a quanto detto Harshad:

Due caratteri esadecimali possono essere aggiunti a qualsiasi codice di colore esadecimale. I primi due caratteri in un codice colore esadecimale a 8 cifre rappresentano l'opacità in Android.

I due caratteri esadecimali possono variare da 00 a FF. Ad esempio,

  • Normale opaca HEX-nero "# 000000"
  • Completamente trasparente - "# 00000000"
  • completamente opaco - "# FF000000"
  • 50% trasparente - "# 7F000000"

In questo modo è possibile modificare qualsiasi colore a qualsiasi livello di trasparenza.

Per trovare il prefisso esadecimale da una percentuale:

Dividere il numero percentuale per 100 e moltiplicare per 255 per ottenere il valore decimale. Convertire il decimale in esadecimale qui .

Ad esempio, per il 50%, 50/100 * 255 = 127. Utilizzando il link otteniamo valore esadecimale 7F.

Fonte: Android: come creare uno sfondo trasparente o opaco

Se desideri aggiungere una trasparenza del 20% o 30%, dovresti anteporre altri due caratteri al codice esadecimale, come CC.

Nota

android:background="#CCFF0088" nell'XML

dove CC è il valore alfa, FF è il fattore rosso, 00 è il fattore verde e 88 è il fattore blu.

Alcuni codici di opacità:

Valori di opacità esadecimali

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

Puoi anche impostare l'opacità a livello di codice come:

yourView.getBackground().setAlpha(127);

Imposta l'opacità tra 0 (completamente trasparente) e 255 (completamente opaco).Il 127,5 è esattamente il 50%.

Puoi creare qualsiasi livello di trasparenza utilizzando la formula fornita.Se vuoi la metà trasparente:

 16 |128          Where 128 is the half of 256.
    |8 -0         So it means 80 is half transparent.

E per una trasparenza del 25%:

16 |64            Where 64 is the quarter of 256.
   |4 -0          So it means 40 is quarter transparent.

Utilizza il codice qui sotto per il nero:

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

Ora, se si desidera utilizzare l'opacità quindi è possibile utilizzare il codice qui sotto:

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

E il seguito per il codice di opacità:

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

utilizzare questo codice per colore trasparente

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

C'è già una costante predefinita. Utilizzare Color.TRANSPARENT.

C'è già un trasparente integrato in Android: R.color.transparent. http://developer.android.com/reference/android/R.color .html # trasparenti

Ma penso che si potrebbe voler rendere lo sfondo dell'immagine che si sta mettendo in WebView trasparente, per esempio, con un PNG trasparente, piuttosto che lo sfondo ImageView. Se l'immagine reale non è affatto trasparente, allora lo sfondo ImageView non può essere visto attraverso di esso.

Nel caso in cui si desidera che nel codice, basta:

mComponentName.setBackgroundColor(Color.parseColor("#80000000"));

In alternativa, come un supplente, analizzare l'ID di risorsa con il seguente codice:

  mComponentName.setBackgroundColor(getResources().getColor(android.R.color.transparent));

Per coloro che stanno ancora affrontando questo problema, si può provare questo
element.getBackground().setAlpha(0);

Nel file XML, impostare un attributo "Alpha"

come

android:alpha="0.0" // for transparent
android:alpha="1.0" // for opaque

Si può dare un valore compreso tra 0,0 e 1,0 in decimale per applicare la trasparenza necessaria. Ad esempio, la trasparenza 0.5 è ideale per componente disabilitato

Prova questo codice:)

E 'un codice esadecimale completamente trasparente - "# 00000000"

Un altro modo semplice:

mComponentName.setBackgroundResource(android.R.color.transparent);

Un'altra opzione di lavoro mi sono imbattuto è quello di impostare android:background="@null"

Utilizza il seguente per la completa trasparenza:

#00000000

Quando ho provato con # 80000000 Ho una mascherina trasparente nera che io non voglio. Provare a cambiare le prime due cifre; controlla il livello di trasparenza, come

#00000000
#10000000
#20000000
#30000000

Si potrebbe anche usare View.setAlpha(float) per modificare la visibilità con precisione.

0 sarebbe trasparente, 1 completamente visibile. ;)

In Android Studio è molto semplice per regolare il colore e l'opacità utilizzando uno strumento built-in:

Android Regola colore opacità

Provare a utilizzare il seguente codice. Essa vi aiuterà in tutto o altro ancora.

  1. Un file XML progettato per utilizzare questo codice per impostare il colore di sfondo:

    android:background="#000000"
    

    o

    android:background="#FFFFFF"
    

    L'immagine è qui

    In alternativa, è possibile impostare a livello di codice pure.

  2. Inoltre è possibile utilizzare questo codice di programmazione:

    image.setBackgroundDrawable(getResources().getDrawable(
        R.drawable.llabackground));
    
  3. Anche questo codice per impostare il colore di sfondo, nonché a livello di codice:

    image.setBackgroundColor(Color.parseColor("#FFFFFF"));
    
  4. Il codice per lo stesso livello di codice:

    image.setBackgroundColor(getResources().getColor(Color.WHITE));
    

Il colore dipende dalla vostra scelta di quale colore che si desidera utilizzare per la trasparenza. Per lo più utilizzare un colore bianco o #FFFFFF.

Per quanto riguarda R.drawable.llabackground: questa riga di codice è per il vostro stile dello sfondo, come qualcosa di speciale o diverso per il vostro scopo. È inoltre possibile utilizzare questo.

Se si utilizza un'immagine XML drawable si può rendere trasparente come mostrato nella foto qui sotto, oppure è possibile utilizzare un codice colore:

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

Inserire descrizione dell'immagine qui

ImageView.setBackground(R.drawable.my_background);

ImageView.setBackgroundResource(R.color.colorPrimary);

ImageView.getImageAlpha();

ImageView.setAlpha(125); // transparency

Prova questo:

#aa000000

Per la trasparenza 000000 = nero, è possibile modificare queste sei numeri per il colore che si desidera.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top