-1

J'ai une mise en page dans laquelle j'utilise une couleur et j'ai fait son opacité à 0,2. J'ai un textview dans cette mise en page, mais lorsque je spécifie moins d'opacité à la mise en page, le texte Textview s'est également estompé. Pourquoi est-ce si? Je veux seulement faire disparaître la couleur de fond pas le texte de textview.Moins Opacité dans la vue fera moins d'opacité pour tous les éléments dans Android

// code de mise en page

<?xml version="1.0" encoding="utf-8"?> 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:alpha="0.2" 
android:background="@drawable/background_rounded_black" 
android:padding="@dimen/dp10"> 


<TextView 
    android:id="@+id/txtNews" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:alpha="1" 
    android:text="djfhwhfirhfiohrhvfuhvfjvbv vknfjvnfjv fv vefjkhvfhvv hvufevhfuievefv ivfhiefhvfe ifvjioefv" 
    android:textColor="@android:color/white" 
    android:textSize="@dimen/dp15" /> 

<TextView 
    android:id="@+id/txtTime" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentRight="true" 
    android:layout_below="@id/txtNews" 
    android:layout_marginTop="@dimen/dp10" 
    android:alpha="1" 
    android:drawableLeft="@drawable/clock_news" 
    android:text="12 hrs ago" 
    android:textColor="@android:color/white" 
    android:textSize="@dimen/dp15" /> 

et maintenant à quoi il ressemble http://prntscr.com/gbxi87

+0

utilisation couleur de fond avec le code alpha –

Répondre

0

Vous définissez tag alpha pour le parent View qui est RelativeLayout. Vous devez définir alpha exactement pour le View que vous souhaitez ajouter à la transparence. Ou si vous souhaitez ajouter de la transparence uniquement pour background, vous devez utiliser une couleur transparente comme arrière-plan du View.

Aussi vous avez dit que vous avez un TextView dans votre disposition qui est deux que je vois !!!

0

Vous devez changer alpha sur votre fond, pas tout l'élément

donc enlever

android:alpha="0.2" 

Et juste changer l'opacité des

android:background="@drawable/background_rounded_black" 

Simpliest façon est de créer de nouveaux background_rounded_black_opacity.xml dans le dossier drawable (copiez simplement drawable/background_rounded_black), puis modifiez la couleur d'arrière-plan en fonction de vos besoins.

Donc, si background_rounded_black ressemble

<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
    <solid android:color="#000000"/> 
    <stroke android:width="3dip" android:color="#B1BCBE" /> 
    <corners android:radius="10dip"/> 
</shape> 

Vous pouvez ajouter votre 0,2 opacité comme l'ajout de 33 à toutes vos couleurs, donc dans votre cas, il sera

<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
    <solid android:color="#33000000"/> 
    <stroke android:width="3dip" android:color="#33B1BCBE" /> 
    <corners android:radius="10dip"/> 
</shape> 
+0

Comment changer l'opacité de fond dans le fichier drawable @DEADMC –

+0

@DeepanshiGupta voir post mise à jour – DEADMC

0

Je vous suggère de définir alpha couleur comme arrière-plan de textview cela fonctionnera bien. Vous avez défini l'opacité de ces widgets de sorte que son opacité soit définie sur les widgets de textview au complet, vous ne devez définir que l'opacité sur la couleur d'arrière-plan de textView.

Vous pouvez définir la couleur avec un code de hachage à 8 chiffres.

par exemple # 90FFFFFF Ici, les deux premiers chiffres définissent l'opacité à la couleur.

Pour plus d'informations, vous pouvez voir ce lien pour définir l'opacité:

Opacity color to Hash code