Oto: dwa działania z przejściem do elementu współużytkowanego (przycisk). Drugi Activity
ma TextInputLayout
z nutą:Problem związany z przejściem do elementu współdzielonego TextInputLayout
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center_horizontal"
android:orientation="vertical">
<Button android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="GO"
android:transitionName="test"/>
<android.support.design.widget.TextInputLayout android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="WTF?!">
<android.support.design.widget.TextInputEditText android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</android.support.design.widget.TextInputLayout>
</LinearLayout>
Przejście wprowadzić drugiego Activity
jest opóźniony o wyjaśnienie problemu: Podpowiedź z TextInputLayout
ignoruje animację przejścia i wyświetlane natychmiast po przejściu jest uruchomiona. Na końcu animacji możesz zobaczyć prawidłowo animowane tło EditText (linia pozioma) pod wskazówką. Czy to błąd, czy też coś mi brakuje? Oto drugi Activity
:
public class SecondActivity extends AppCompatActivity {
public static void launch(Activity activity, View sharedElement) {
Intent intent = new Intent(activity, SecondActivity.class);
ActivityOptionsCompat options = ActivityOptionsCompat.
makeSceneTransitionAnimation(activity, sharedElement, "test");
activity.startActivity(intent, options.toBundle());
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getWindow().setEnterTransition(new Slide().setDuration(5000));
}
}
}
EDIT: Ten błąd może być „stałym”, dodając tło układ Drugie działanie użytkownika.
Jaki jest twój element współdzielony? Czego oczekujesz? – azizbekian
Współdzielonym elementem jest przycisk, jak widać na przykładzie kodu. Oczekuje się, że wskazówka TextInputLayout jest odpowiednio animowana jako część przejścia Activity, podobnie jak reszta widoku (spójrz na właściwe przejście tła EditText w filmie wideo). – artkoenig
Proszę, wyjaśnij swoje pytanie. Twój animowany GIF wygląda ładnie, mamy go. To całkiem fajna animacja. Ale nie rozumiem, o co chodzi? gdzie to jest? Co widzę, jeśli niebieska linia porusza się w górę. To wszystko. Następnie pod polem wprowadzania pojawia się krótka linia migania. Czy to jest oczekiwane? Czy nie jest to oczekiwane? Wtf? – babay