2015-12-23 15 views
12

In meiner App verwende ich den Android Activity Slide Übergang. Ich folgte a nice tutorial und alles wie erwartet funktioniert, außer für den Hinweis meines EditText, die innerhalb eines InputTextLayout enthalten ist:EditText Hinweis visibile während Übergang

<android.support.design.widget.TextInputLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_margin="@dimen/activity_vertical_margin"> 

    <EditText 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:hint="Your name"/> 
</android.support.design.widget.TextInputLayout> 

Alle Komponenten gut animiert sind, aber der Hinweis nur erscheint, bevor die Animation beginnt und bleibt in die endgültige Position. Muss ich zusätzlichen Code hinzufügen, um dem Framework mitzuteilen, dass der Hinweis ebenfalls animiert werden soll?

Nach the Android developer documentation sollte es funktionieren (oder zumindest wird es nicht unterstützt).

Ich verwende Version 22.2 der Support Design Library.

Es wäre toll, wenn mir jemand in die richtige Richtung zeigen könnte.

+0

Das gleiche gilt für Android 5.1.1 und Support-Bibliothek Version 23.1.1 noch. Wer findet jemals eine Lösung? –

+0

Nicht ich. Sry. :/ – Morosko

+1

Dies ist ein #Wanze. –

Antwort

1

Dies ist ein Fehler. Ich habe nach einer Lösung gesucht. Die Problemumgehung, die ich verwendet habe, ist, den Hinweis auf edittext vor der Animation als leer zu setzen und den Editiertext-Hinweis nach Beendigung der Animation zu setzen. Aber ich weiß nicht, ob das ist, was du tun möchtest.

+1

Es ist ein Workaround, aber auch nicht gut im Sinne der Material Design-Richtlinien animiert. Ich denke, wir müssen auf eine offizielle Lösung warten. – Morosko

8

diese Lösung Versuchen Sie, es funktioniert für mich:

Wenn Sie> 1 TextInputLayouts haben, setzen TextInputLayouts in einen Behälter

inputTextPanel : LinearLayout 
    TextInputLayout 
    login : EditText 
    TextInputLayout 
    password : EditText 

und in onCreateView:

setContentView(R.layout.login_layout) 
configuration(fromSdk = 21) { 
    inputTextPanel.isTransitionGroup = true 
} 

Wenn Sie nur eine, Sie können nur

myTextInputLayout.isTransitionGroup = true 
+3

Vielen Dank für eine großartige Lösung. Sie können auch Fügen Sie einfach android: transitionGroup = "true" in xml hinzu. Fügen Sie einfach jedem TextInputLayout hinzu, um das Hinzufügen eines zusätzlichen LinearLayout-Nests zu vermeiden. – tylerjroach

Verwandte Themen