共享元素转换在Android中不起作用
我已经设置了我的应用程序样式共享元素转换在Android中不起作用,android,android-intent,android-animation,android-cardview,Android,Android Intent,Android Animation,Android Cardview,我已经设置了我的应用程序样式 <item name="android:windowContentTransitions">true</item> 但当我单击cardview查看第二个活动时,动画不会运行。知道为什么吗 您是如何在活动/片段中绑定宠物图像的 您可以这样尝试: ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation((
<item name="android:windowContentTransitions">true</item>
但当我单击cardview查看第二个活动时,动画不会运行。知道为什么吗 您是如何在活动/片段中绑定宠物图像的 您可以这样尝试:
ActivityOptionsCompat options =
ActivityOptionsCompat.makeSceneTransitionAnimation((Activity)mContext,
(View) pet_image, "transitionName");
如果共享元素嵌套在另一个视图中,则需要确保父视图也已转换。
您使用的是哪个android版本的设备?您上面的代码表示您正在使用整个卡进行转换,并且在您的第一个活动布局中,您已经为pet_图像提供了转换。修复并检查。它足够高,可以使用共享元素转换,我有另一个应用程序也使用了它,并且它在同一设备上显示了转换。检查上面的评论。你是对的,我更改了它,以便为pet_图像而不是整个_卡提供正确的转换,但它仍然不起作用
<ImageView
android:id="@+id/imgDisplay"
android:layout_width="match_parent"
android:layout_height="566dp"
android:scaleType="fitCenter"
android:transitionName="@string/transition_name"
/>
//animation
String transitionName = v.getResources().getString(R.string.transition_name);
View viewStart = v.findViewById(R.id.entire_card);
ActivityOptionsCompat options =
ActivityOptionsCompat.makeSceneTransitionAnimation((Activity)mContext, viewStart, transitionName);
v.getContext().startActivity(intent, options.toBundle());
ActivityOptionsCompat options =
ActivityOptionsCompat.makeSceneTransitionAnimation((Activity)mContext,
(View) pet_image, "transitionName");