Créer une ondulation retirable sans transparence
Je suis un peu perdu sur la façon d'utiliser correctement Ondulation Drawable.
Disons que j'ai cette drawable :
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_pressed="false" android:state_focused="true" android:drawable="@color/accent_color_light" />
<item android:state_pressed="true" android:drawable="@color/accent_color_light" />
<item android:drawable="@android:color/white" />
</selector>
C'est donc avec un fond blanc qui change à une lumière bleue quand il est porté ou pressé.
Comment puis-je obtenir les mêmes couleurs mais avec un effet d'entraînement ?
Je pense que j'ai besoin d'utiliser un masque pour éviter de se faire à l'extérieur des limites de la vue ?
OriginalL'auteur Stephane Mathis | 2014-11-17
Vous devez vous connecter pour publier un commentaire.
Oublié de répondre à ma propre question.
La couleur de l'élément avec l'id "masque" n'est pas affiché. Il est utilisé pour dire la forme et les limites de l'effet d'entraînement. Sans elle, il ne peut aller à l'extérieur des limites de la vue.
OriginalL'auteur Stephane Mathis
RippleDrawable
est déjà unStateListDrawable
(c'est à direselector
) - de sorte que vous pouvez simplement utiliser une ondulation drawable que votre arrière-plan (avec un état par défaut) - quelque chose comme cela:le masque morceau limites de l'ondulation (et, en réalité, l'extrait ci-dessus, moins les couleurs et le dernier
android:drawable
qui définit la non-pressé arrière-plan) est le liste par défaut sélecteur utilisé en sucette.OriginalL'auteur ahmedre