Was ich tun möchte:
Wenn ich einen EditText verwende, der in ein TextInputLayout eingebettet ist, möchte ich ...
Was ich versucht habe:
Wenn Sie das folgende Thema als Thema / Stil in TextInputLayout festlegen, erfüllt dies 1. aber nicht 2.
%Vor%Festlegen einer bestimmten Farbe für meinen eingebetteten EditText, der den Hinweistext in eine andere Farbe ändert:
%Vor%verursacht tatsächlich eine Überlappung von Hinweistexten, wenn das Etikett von seiner schwebenden Position zurück in den Editiertext als ein Hinweis (d. h. kein Text) bewegt wird.
Einstellung:
%Vor%im TextInputLayout:
%Vor%Ändert die Farbe der Hinweismarke, aber auch für den fokussierten Zustand - was bedeutet, dass 4 nicht erfüllt ist.
Und da ein Bild mehr sagt als ein Tousand-Wort (alle Felder sind nicht fokussiert):
Wie erreicht man ein Setup, das die Kriterien 1-4 erfüllt?
Ich hatte ein ähnliches Problem: Ich musste ein Texteingabelayout implementieren, in dem das Etikett verschiedene Farben für leer hat (wenn im Bearbeitungstext kein Text eingegeben wurde), "gefüllt" und fokussiert. Mein Hauptproblem bestand darin, zwischen dem leeren und dem gefüllten Zustand zu unterscheiden, da das Setzen einer anderen Farbe für den fokussierten Zustand bereits leicht mit Selektoren möglich war. Am Ende entschied ich mich, einen benutzerdefinierten "leeren Text" -Zustand zu definieren und mein benutzerdefiniertes Texteingabe-Layout zu implementieren (welches das normale Texteingabe-Layout erweitert).
Hier ist ein Code:
In res / Werte / attrs.xml:
%Vor%Das benutzerdefinierte Texteingabe-Layout:
%Vor%XML-Selektor zum Festlegen der Farbe der Beschriftung in verschiedenen Zuständen (res / color / input_field_floating_label.xml):
%Vor%Stil für das Eingabetextlayout (in res / values / styles.xml):
%Vor%Thema und Stil für den Bearbeitungstext (immer noch in res / values / styles.xml):
%Vor%Verwendung:
%Vor%Ich empfehle diesen Blogbeitrag, um eine Vorstellung von der Arbeit mit benutzerdefinierten Zuständen zu bekommen: Ссылка
Tags und Links android android-layout android-theme android-styles