Анимация CardView: поднять и развернуть по клику?

В настоящее время я создаю свое первое приложение для Android и задаюсь вопросом, каким будет метод, чтобы установить вид карты для поднятия, а затем развернуться в более крупный прямоугольник, показывая новый фрагмент?

edit: (новый фрагмент заполнит третью часть экрана, независимо от того, где была установлена ​​оригинальная карта)

Ответ 1

Аутентичное движение

Материальные поверхности не просто появляются из ниоткуда, как скачок в фильм; они перемещаются на место, помогая сосредоточить внимание, пространственные отношения и поддерживать непрерывность. Материалы реагируют на коснитесь, чтобы подтвердить свое взаимодействие, и все изменения излучают наружу от ваш сенсорный пункт. Все движение имеет смысл и интимность, помогая понимание пользователей.

Активность + Фрагментные переходы

Объявив "общие элементы, которые являются общими для двух экранов, вы может создать плавный переход между двумя состояниями.

album_grid.xml
…
    <ImageView
        …
        android:transitionName="@string/transition_album_cover" />
album_details.xml
…
    <ImageView
        …
        android:transitionName="@string/transition_album_cover" />

AlbumActivity.java
Intent intent = new Intent();
String transitionName = getString(R.string.transition_album_cover);
…
ActivityOptionsCompat options =
ActivityOptionsCompat.makeSceneTransitionAnimation(activity,
    albumCoverImageView,   // The view which starts the transition
    transitionName    // The transitionName of the view we’re transitioning to
    );
ActivityCompat.startActivity(activity, intent, options.toBundle());

Здесь мы определяем одно и то же имя перехода на двух экранах. При запуске новая активность и этот переход анимируются автоматически. В Помимо общих элементов, вы можете теперь также вводить хореографию и выходящие элементы.

Источник: Внедрение дизайна материалов