Je sais déjà comment définir l'opacité de l'image d'arrière-plan mais je dois définir l'opacité de mon objet forme.
Dans mon application Android, je l'ai comme ceci:
et je veux rendre cette zone noire un peu transparente, comme ici, par exemple je peux voir des cercles à travers ce "Bienvenue ...":
Voici mon code de forme:
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/shape_my"">
<stroke android:width="4dp" android:color="#636161" />
<padding android:left="20dp"
android:top="20dp"
android:right="20dp"
android:bottom="20dp" />
<corners android:radius="24dp" />
</shape>
Comment puis je faire ça?
Réponses:
En général, il suffit de définir une couleur légèrement transparente lors de la création de la forme.
Vous pouvez y parvenir en définissant le canal alpha des couleurs.
#FF000000
vous obtiendrez un noir uni alors#00000000
que vous obtiendrez un noir 100% transparent (enfin ce n'est plus du noir évidemment).La palette de couleurs est la suivante:
#AARRGGBB
A représente le canal alpha, R représente le rouge, G le vert et B le bleu.La même chose s'applique si vous définissez la couleur en Java. Là, ça ne ressemblera qu'à
0xFF000000
.MISE À JOUR
Dans votre cas, vous devrez ajouter un
solid
nœud. Comme ci-dessous.<?xml version="1.0" encoding="UTF-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/shape_my""> <stroke android:width="4dp" android:color="#636161" /> <padding android:left="20dp" android:top="20dp" android:right="20dp" android:bottom="20dp" /> <corners android:radius="24dp" /> <solid android:color="#88000000" /> </shape>
La couleur ici est un noir semi-transparent.
la source
utilisez ce code ci-dessous comme progress.xml:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@android:id/background"> <shape> <corners android:radius="5dip" /> <gradient android:startColor="#ff9d9e9d" android:centerColor="#ff5a5d5a" android:centerY="0.75" android:endColor="#ff747674" android:angle="270" /> </shape> </item> <item android:id="@android:id/secondaryProgress"> <clip> <shape> <solid android:color="#00000000" /> </shape> </clip> </item> <item android:id="@android:id/progress"> <clip> <shape> <solid android:color="#00000000" /> </shape> </clip> </item> </layer-list>
où:
après cela, utilisez-le dans la mise en page contenant le xml:
<SeekBar android:id="@+id/myseekbar" ... android:progressDrawable="@drawable/progress" />
vous pouvez également personnaliser le pouce en utilisant une icône personnalisée seek_thumb.png:
android:thumb="@drawable/seek_thumb"
la source
Utilisez celui-ci, j'ai écrit ceci sur mon application,
<?xml version="1.0" encoding="utf-8"?> <!-- res/drawable/rounded_edittext.xml --> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:padding="10dp"> <solid android:color="#882C383E"/> <corners android:bottomRightRadius="5dp" android:bottomLeftRadius="5dp" android:topLeftRadius="5dp" android:topRightRadius="5dp"/> </shape>
la source