Ich bin auch während meiner Suche darauf gestoßen, habe mich aber gefragt, ob Android eine native Methode bietet.
Xsorifc28
1
Dies lässt uns denken, dass etwas mit Android nicht stimmt. In der API für Materialdesign fehlen mehrere Lücken. Ein weiteres Beispiel ist der Float Action Button.
Motobói
Antworten:
3
Sie müssen Ihrer Datei build.gradle Folgendes hinzufügen:
Wow, danke! Ich werde diese durchsehen und Sie wissen lassen, wie es geht!
AdamMc331
2
Der dritte war das, wonach ich gesucht habe. Ich bin auf TextInputLayout gestoßen, konnte aber kein gutes Beispiel finden (wahrscheinlich alle falschen Begriffe suchen). Vielen Dank!
AdamMc331
18
Die Android-Unterstützungsbibliothek kann in gradle in den Abhängigkeiten importiert werden:
compile 'com.android.support:design:22.2.0'
Es sollte in GradlePlease enthalten sein! Und als Beispiel, um es zu verwenden:
Ich erhalte den Fehler: (1) "Attribut" Farbe "wurde bereits definiert" bei der Gradle-Synchronisierung, wahrscheinlich aufgrund der Appcompat-v7. Ich kann es nicht loswerden. Anny Vorschläge?
Mdzeko
MaterialEditText hat kein Attribut mit dem Namen "Farbe" definiert, daher muss an anderer Stelle etwas falsch sein.
Rengwuxian
9
Importieren Sie die Unterstützungsbibliotheken. Fügen Sie in der build.gradle-Datei Ihres Projekts die folgenden Zeilen in die Abhängigkeiten des Projekts ein:
Rufen Sie dann setHint in TextInputLayout direkt nach dem Aufruf von setContentView auf, da Sie zum Animieren der schwebenden Beschriftung nur einen Hinweis mit der Methode setHint festlegen müssen.
Zumindest mit 23.1.1 müssen Sie keinen expliziten Aufruf von verwenden setHint(). Es funktioniert mit dem Hinweis, der EditTextin der Layout-XML festgelegt ist.
https://github.com/thebnich/FloatingHintEditText funktioniert mit appcompat-v7 v21.0.0. Da v21.0.0 jedoch keine Akzentfarben mit Unterklassen von unterstützt EditText, ist die Unterstreichung von FloatingHintEditTextstandardmäßig das feste Schwarz oder Weiß. Außerdem ist die Polsterung nicht für den Materialstil optimiert EditText, sodass Sie sie möglicherweise anpassen müssen.
Danke dir. Ich vermute, Google hat auch keine API zum Erstellen einer Warnung zum Bearbeiten von Text im Materialstil bereitgestellt, wie in google.com/design/spec/components/…. Entschuldigen Sie die Amateurfragen, ich versuche, mich so gut an das Materialdesign anzupassen Ich kann die API / Bibliotheken von Google verwenden und versuchen, alles herauszufinden, was bereitgestellt wurde, im Vergleich zu externen Bibliotheken. Danke noch einmal!
Um die Verwendung des InputTextLayout zu vereinfachen, habe ich diese Bibliothek erstellt, die Ihren XML-Code auf weniger als die Hälfte reduziert und Ihnen die Möglichkeit bietet, eine Fehlermeldung sowie eine Hinweisnachricht festzulegen, und eine einfache Möglichkeit, dies zu tun Validierungen.
https://github.com/TeleClinic/SmartEditText
<com.teleclinic.kabdo.smartmaterialedittext.CustomViews.SmartEditTextandroid:id="@+id/emailSmartEditText"android:layout_width="match_parent"android:layout_height="wrap_content"app:setLabel="Email"app:setMandatoryErrorMsg="Mandatory field"app:setRegexErrorMsg="Wrong email format"app:setRegexType="EMAIL_VALIDATION"/><com.teleclinic.kabdo.smartmaterialedittext.CustomViews.SmartEditTextandroid:id="@+id/passwordSmartEditText"android:layout_width="match_parent"android:layout_height="wrap_content"app:setLabel="Password"app:setMandatoryErrorMsg="Mandatory field"app:setPasswordField="true"app:setRegexErrorMsg="Weak password"app:setRegexType="MEDIUM_PASSWORD_VALIDATION"/><com.teleclinic.kabdo.smartmaterialedittext.CustomViews.SmartEditTextandroid:id="@+id/ageSmartEditText"android:layout_width="match_parent"android:layout_height="wrap_content"app:setLabel="Age"app:setMandatory="false"app:setRegexErrorMsg="Is that really your age :D?"app:setRegexString=".*\\d.*"/>
Antworten:
Sie müssen Ihrer Datei build.gradle Folgendes hinzufügen:
Und verwenden Sie com.google.android.material.textfield.TextInputLayout in Ihrem XML:
quelle
Gleitender Hinweis EditText:
Fügen Sie die folgende Abhängigkeit in Gradle hinzu:
Im Layout:
quelle
22.2.0
implementation 'com.google.android.material:material:1.0.0-rc01'
.Ja, seit dem 29. Mai 2015 ist diese Funktionalität in der Android Design Support Library verfügbar
Diese Bibliothek enthält Unterstützung für
quelle
Die Android-Unterstützungsbibliothek kann in gradle in den Abhängigkeiten importiert werden:
Es sollte in GradlePlease enthalten sein! Und als Beispiel, um es zu verwenden:
Übrigens versteht der Editor möglicherweise nicht, dass AutoCompleteTextView in TextInputLayout zulässig ist.
quelle
Android hat keine native Methode bereitgestellt. Noch der AppCompat.
Probieren Sie diese Bibliothek aus: https://github.com/rengwuxian/MaterialEditText
Dies könnte sein, was Sie wollen.
quelle
Importieren Sie die Unterstützungsbibliotheken. Fügen Sie in der build.gradle-Datei Ihres Projekts die folgenden Zeilen in die Abhängigkeiten des Projekts ein:
Verwenden Sie das folgende TextInputLayout in Ihrem UI-Layout:
Rufen Sie dann setHint in TextInputLayout direkt nach dem Aufruf von setContentView auf, da Sie zum Animieren der schwebenden Beschriftung nur einen Hinweis mit der Methode setHint festlegen müssen.
quelle
setHint()
. Es funktioniert mit dem Hinweis, derEditText
in der Layout-XML festgelegt ist.@ andruboys Vorschlag von https://gist.github.com/chrisbanes/11247418 ist wahrscheinlich die beste Wahl .
https://github.com/thebnich/FloatingHintEditText funktioniert mit appcompat-v7 v21.0.0. Da v21.0.0 jedoch keine Akzentfarben mit Unterklassen von unterstützt
EditText
, ist die Unterstreichung vonFloatingHintEditText
standardmäßig das feste Schwarz oder Weiß. Außerdem ist die Polsterung nicht für den Materialstil optimiertEditText
, sodass Sie sie möglicherweise anpassen müssen.quelle
Nein, tut es nicht. Ich würde dies in einer zukünftigen API-Version erwarten, aber im Moment bleiben wir bei EditText. Eine weitere Option ist diese Bibliothek:
https://github.com/marvinlabs/android-floatinglabel-widgets
quelle
Um die Verwendung des InputTextLayout zu vereinfachen, habe ich diese Bibliothek erstellt, die Ihren XML-Code auf weniger als die Hälfte reduziert und Ihnen die Möglichkeit bietet, eine Fehlermeldung sowie eine Hinweisnachricht festzulegen, und eine einfache Möglichkeit, dies zu tun Validierungen. https://github.com/TeleClinic/SmartEditText
Einfach hinzufügen
Dann können Sie so etwas tun:
quelle
Versuchen Sie es auf diese Weise
Für weitere Informationen klicken Sie hier
quelle