Nachdem ich die Android Design Support Library verwendet hatte TextInputLayout
, um ein schwebendes Etikett über einer EditText
Komponente zu platzieren, fragte ich mich, ob es eine Möglichkeit gibt, der Spinner
Komponente ein schwebendes Etikett hinzuzufügen (nicht unbedingt mithilfe der Design Library).
Damit meine ich so etwas wie ein TextView
über dem platziertes Spinner
(offensichtlich keine Animationen wie das TextInputLayout
), aber ich möchte, dass die Textgröße, Schriftart und Farbe mit der des TextInputLayout
schwebenden Etiketts des ' übereinstimmen .
Zum Beispiel würde es ungefähr so aussehen (siehe die Beschriftungen über dem Spinner
s):
Wie ich bereits erwähnt habe, ist es mein Hauptziel, eine Beschriftung über der Beschriftung zu haben Spinner
, genau wie in der TextInputLayout
- also wären Textgröße, Schriftart, Farbe und Abstände zwischen der Beschriftung und der Komponente gleich.
Auf der Google Design-Seite zu schwebenden Etikettentextfeldern gibt es ein Diagramm, in dem die Abmessungen des Etiketts relativ zur Komponente angezeigt werden. Es gibt jedoch keinen Hinweis auf die Farbe oder Größe des Etikettentextes:
Zusammenfassend frage ich also:
- Wenn es eine spezielle Komponente gibt, um das zu erreichen, was ich verlange, oder eine benutzerdefinierte Ansicht, die ich verwenden kann, welche wäre das und wie kann ich sie verwenden.
- Wenn nicht, wie groß ist die Größe, Farbe und Schriftart des schwebenden Etikettentextes, damit ich mit den im obigen Bild gezeigten Layoutabmessungen eine TextView
über meiner platzieren Spinner
kann.
BEARBEITEN:
Aus den Google Design-Richtlinien für Textfelder geht hervor , dass für schwebende Beschriftungen Folgendes gilt:
Hinweis und Eingabeschrift: Roboto Regular 16sp Beschriftungsschrift
: Roboto Regular 12sp Fliesenhöhe
: 72dp
Text oben und unten Textauffüllung: 16dp
Textfeldteilerauffüllung: 8dp
sowie die oben gezeigten Bilder.
Die Floating-Label-Schriftart lautet also: Roboto Regular 12sp . Sie können daher ein verwenden TextView
, um das Spinner
Etikett anzuzeigen, da mir keine benutzerdefinierten View
oder speziellen Komponenten bekannt sind, die Sie verwenden könnten.
Jedoch , es nach dem Versuch aus, ist es nicht ganz wie das Beispiel so gut aussieht in der Abbildung dargestellt. Eine benutzerdefinierte Ansicht mag dafür besser sein , da sie besser aussehen könnte, aber die obige Lösung ist nur eine Möglichkeit, etwas zu erreichen, das dem entspricht, was ich ursprünglich wollte.