这可能是由于 Activity 或 Fragment 的生命周期以某种方式被破坏所致。您可以尝试在 Activity 或 Fragment 进入或离开视图时,分别停止或开始动画。以下是一个示例代码:
在 Activity 的 onCreate() 方法中,初始化 Transition:
Transition transition = new AutoTransition();
transition.setDuration(500);
在 Fragment 中,您可以在 onStart() 和 onStop() 中分别启动和停止 Transition:
@Override
public void onStart() {
super.onStart();
TransitionManager.beginDelayedTransition((ViewGroup) getView().getParent(), transition);
}
@Override
public void onStop() {
super.onStop();
TransitionManager.endTransitions((ViewGroup) getView().getParent());
}
请注意,您需要使用 TransitionManager 将动画应用于父视图。这里的例子假设 Fragment 的布局在父 ViewGroup 中。