[英]Life cycle of view android
我想在恢复活动后发生一些视图动画,但是在加载所有视图并且在加载所有视图之前(动画转换之前)开始动画之后,我无法成功捕捉时间。 我试图使用onDraw,onWindowFocusChange,onResume,我发现onDraw是视图生命周期的最后一个方法,但我仍然看到动画在用户看到所有视图之前开始
这是在我的设备上测试的Android Activity生命周期和Android View生命周期(Sony Z1 Compact)
Start an Activity
Activity: onCreate
Activity: onStart
Activity: onResume
View: onAttachedToWindow
View: onWindowFocusChanged true
# Running
Activity: onPause
View: onWindowFocusChanged false
# Start to another Activity
# Back from another Activity
Activity: onResume
View: onWindowFocusChanged true
# Running
View: onWindowFocusChanged false
Activity: onPause
Activity: onStop
Activity: onDestroy
View: onDetachedFromWindow
Turn Off Screen
Activity: onCreate
Activity: onStart
Activity: onResume
View: onAttachedToWindow
View: onWindowFocusChanged true
# Running
Activity: onPause
Activity: onStop
View: onWindowFocusChanged false
# Turn Off Screen
# Turn On Screen
Activity: onStart
Activity: onResume
View: onWindowFocusChanged true
# Running
View: onWindowFocusChanged false
Activity: onPause
Activity: onStop
Activity: onDestroy
View: onDetachedFromWindow
Switch Application
Activity: onCreate
Activity: onStart
Activity: onResume
View: onAttachedToWindow
View: onWindowFocusChanged true
# Running
Activity: onPause
View: onWindowFocusChanged false
Activity: onStop
# Switch to Application
# Back from Application
Activity: onStart
Activity: onResume
View: onWindowFocusChanged true
# Running
Activity: onPause
View: onWindowFocusChanged false
Activity: onStop
Activity: onDestroy
View: onDetachedFromWindow
除非视图具有生命周期,否则请考虑使用片段而不是视图作为片段。 生命周期与嵌入它们的Activity绑定。
另请参阅: 在Android中使用Fragments而不是Views有什么好处?
编辑:
尝试延迟开始动画:
new Handler().post(new Runnable() {
@Override
public void run() {
// Start your animation here.
}
});
您可以创建启动活动。 在此启动活动中,您可以显示动画。
此外,如果您需要在显示动画时计算某事,请使用线程计算并将其发送到您的主要活动
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.