Активность не видна при использовании общего перехода элемента - PullRequest
0 голосов
/ 23 октября 2019

Я пытаюсь перейти от действия к списку к действиям с использованием перехода с помощью общего элемента, но при использовании общего элемента целевое действие не отображается

, когда я не использую общий элемент, он работает нормально

app without shared element transition

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

app with shared element transition

Я пытался установить белый фон сведений о деятельности, но он не работает

так я начинаю деятельность

            Intent intent = new Intent(activity, NewsActivity.class);
            Bundle data = new Bundle();
            data.putParcelable(Constants.NEWS, news);
            ActivityOptionsCompat options = ActivityOptionsCompat.
                    makeSceneTransitionAnimation(activity, view, ViewCompat.getTransitionName(view));
            intent.putExtra(DATA, data);
            startActivity(intent,options.toBundle());

мои данные активности xml

<androidx.constraintlayout.motion.widget.MotionLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" 
android:fitsSystemWindows="true"
tools:context=".ui.news.NewsActivity"
app:layoutDescription="@xml/collapsing_toolbar_news">

<ImageView
    android:id="@+id/toolbar_background"
    android:layout_width="match_parent"
    android:layout_height="?actionBarSize"
    android:scaleType="centerCrop"
    android:src="@color/colorPrimary"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.0"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />
<ImageView
    android:id="@+id/image"
    android:layout_width="0dp"
    android:layout_height="200dp"
    app:srcCompat="@color/colorPrimary"
    android:scaleType="centerCrop"
    android:transitionName="news"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:layout_constraintEnd_toEndOf="parent"/>

<ImageView
    android:id="@+id/back"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:minHeight="60dp"
    android:scaleType="centerInside"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:srcCompat="@drawable/ic_back" />
<TextView
    android:id="@+id/news_title"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:textSize="18sp"
    android:paddingTop="24dp"
    android:paddingStart="24dp"
    android:paddingEnd="24dp"
    android:paddingBottom="12dp"
    android:fontFamily="@font/montserrat_medium"
    android:textColor="@color/black"
    android:text="@string/app_name"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/image"
    app:layout_constraintEnd_toEndOf="parent" />
<androidx.core.widget.NestedScrollView
    android:layout_width="0dp"
    android:layout_height="0dp"
    android:id="@+id/nested_scroll"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/news_title"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintBottom_toBottomOf="parent"
    android:paddingStart="24dp"
    android:paddingEnd="24dp"
    android:layout_marginTop="12dp"
    tools:showIn="@layout/activity_news">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">
        <TextView
            android:id="@+id/description"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="24dp"
            android:textSize="16sp"
            android:fontFamily="@font/kanit_regular"
            android:textColor="@color/dark_text"
            android:text="@string/large_text" />
    </LinearLayout>

    </androidx.core.widget.NestedScrollView>
</androidx.constraintlayout.motion.widget.MotionLayout>

мойпункт утилизации xml

<com.google.android.material.card.MaterialCardView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="100dp"
    android:layout_marginTop="10dp"
    android:layout_marginBottom="10dp"
    android:orientation="vertical"
    app:cardCornerRadius="10dp"
    app:strokeColor="#BDBDBD"
    app:strokeWidth="1dp">
    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <com.islam.custom.roundedimageview.RoundedImageView
            android:id="@+id/news_image"
            android:transitionName="news"
            android:layout_width="match_parent"
            android:layout_height="100dp"
            android:scaleType="centerCrop"
            android:src="@drawable/ic_questions_background"
            app:riv_corner_radius="10dp" />
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="100dp"
            android:scaleType="centerCrop"
            app:srcCompat="@drawable/ic_gradient_20"/>
        <ProgressBar
            android:id="@+id/progressbar"
            style="@style/progressbar"
            android:layout_gravity="center"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"/>
    </FrameLayout>
    <TextView
        android:id="@+id/news_title"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"
        android:fontFamily="@font/kanit_regular"
        android:maxLines="1"
        android:padding="14dp"
        android:ellipsize="end"
        android:text="@string/app_name"
        android:textColor="@color/white"
        android:textSize="16sp" />
    </com.google.android.material.card.MaterialCardView>

1 Ответ

0 голосов
/ 23 октября 2019

После поиска я обнаружил, что проблема была в том, что я использовал режим запуска для активности root

        android:launchMode="singleInstance"

, но я не знаю, как это заставило его работать неправильно. и мне все еще нужно установить режим запуска для активности root

...