Après avoir utilisé la bibliothèque de support de conception Android TextInputLayout
pour placer une étiquette flottante au-dessus d'un EditText
composant, je me demandais s'il existe un moyen d'ajouter une étiquette flottante au Spinner
composant (pas nécessairement en utilisant la bibliothèque de conception).
Par cela, je veux dire quelque chose comme un TextView
placé au-dessus du Spinner
(évidemment pas d'animations comme le TextInputLayout
), mais je veux que la tailleTextInputLayout
du texte, la police et la couleur correspondent à celles de l' étiquette flottante du .
Par exemple, cela ressemblerait à quelque chose comme ceci (voir les étiquettes au-dessus des Spinner
s):
Comme je l'ai mentionné précédemment, mon objectif principal est d'avoir une étiquette au-dessus du Spinner
, tout comme dans le TextInputLayout
- donc la taille du texte, la police, la couleur et les distances entre l'étiquette et le composant seraient les mêmes.
Sur la page Google Design concernant les champs de texte d'étiquette flottante , il y a un diagramme montrant les dimensions de l'étiquette par rapport au composant, mais il n'y a aucune indication sur la couleur ou la taille du texte de l'étiquette:
Donc, pour résumer, je demande:
- S'il y a un composant spécial pour réaliser ce que je demande ou une vue personnalisée que je peux utiliser, quel serait-il et comment puis-je l'utiliser.
- Sinon, quelle est la taille, la couleur et la police du texte de l'étiquette flottante, afin que je puisse placer un TextView
au-dessus de mon Spinner
avec les dimensions de mise en page indiquées dans l'image ci-dessus.
ÉDITER:
D'après les directives Google Design pour les champs de texte , il contient les éléments suivants pour les libellés flottants:
Astuce et police d'entrée: Roboto Regular 16sp
Police d'étiquette: Roboto Regular 12sp
Hauteur de la tuile: 72dp Rembourrage du
haut et du bas du
texte: 16dp Rembourrage du séparateur de champ de texte: 8dp
ainsi que les images ci-dessus.
La police d'étiquette flottante est donc: Roboto Regular 12sp . Vous pouvez donc utiliser a TextView
pour afficher l' Spinner
étiquette car je ne connais pas de View
composants personnalisés ou spéciaux que vous pourriez utiliser.
Cependant , après l'avoir essayé, il n'a pas l'air aussi bon que l'exemple montré dans l'image. Une vue personnalisée peut être meilleure pour cela , car elle pourrait paraître plus jolie, mais la solution ci-dessus n'est qu'une façon d'obtenir quelque chose de proche de ce que je voulais à l'origine.