Activity activity in Android activity will not work properly on overlapping views

Here is the scenario:

I am trying to declare a transitional animation between two actions - the master and the details. A wizard is a RecyclerViewlist with images, a part LinearLayoutwith a title from the parent list. Transitions are declared in XML and are associated with activity detailing as follows:

<item name="android:windowSharedElementEnterTransition">@transition/activity_enter_shared</item>
<item name="android:windowEnterTransition">@transition/activity_enter</item>

The RecyclerViewadapter transition starts as follows:

final ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation(
    mContext, 
    imgView, 
    ViewCompat.getTransitionName(imgView)
);
mContext.startActivity(new Intent(mContext, ChildActivity.class), options.toBundle());

: @transition/activity_enter fade (, ). FrameLayout . , , fade, "pop in". , - LinearLayout, .

fade @transition/activity_enter :

<fade
    android:startDelay="300"
    android:duration="100"
    android:interpolator="@android:interpolator/linear">
    <targets>
        <target android:targetId="@id/target_id" />
    </targets>
</fade>

1 - Activity fade :

final ViewGroup frame = (ViewGroup) findViewById(R.id.frame);
frame.setOnClickListener(new View.OnClickListener() {
    boolean visible;

    @Override
    public void onClick(View v) {
        TransitionManager.beginDelayedTransition(frame);
        visible = !visible;
        frame.findViewById(R.id.target_id).setVisibility(visible ? View.VISIBLE : View.GONE);
    }
});

2 - (@transition/activity_enter_shared) , .

3. :

<FrameLayout>
    <ImageView />
    <ImageButton android:id="@+id/target_id" />
</FrameLayout/>

FrameLayout, .

4. , Lorem, ipsum .

enter image description here

+4
1

, .

<item name="android:windowSharedElementsUseOverlay">false</item>

.

:

, . - true.

0

Source: https://habr.com/ru/post/1674556/


All Articles