在 Android SDK 中使用 onPause 方法时,只要重新绘制 Activity(例如旋转设备),就会运行该代码。有没有办法检测 Activity 是否实际暂停(例如弹出一个新窗口)或者 Activity 是否实际上只是重新绘制?
问问题
104 次
1 回答
0
实际上,如果您查看活动的生命周期,当设备旋转时,活动会重新启动,因此之后onPause()
,活动会经历完整的重新启动周期(onStop()
并且onRestart()
也被调用),因此在这种情况下您可以设置一些值取决于调用了哪些函数,或检查设备的方向。
此外,当活动进入后台时,onPause()
被调用,当活动不再对用户可见时,onStop()
被调用,这是由于特定原因,应用程序可以通过设置一些变量来检查。为了完全理解,研究活动生命周期(备用链接)
但是为什么你需要知道活动发生了什么?通过覆盖适当的函数并提供适当的布局资源,您不需要知道大多数情况下发生了什么。
对于方向,您也可以使用getRotation
方法获取方向。
于 2012-05-19T03:36:10.190 回答