1

在 Android SDK 中使用 onPause 方法时,只要重新绘制 Activity(例如旋转设备),就会运行该代码。有没有办法检测 Activity 是否实际暂停(例如弹出一个新窗口)或者 Activity 是否实际上只是重新绘制?

4

1 回答 1

0

实际上,如果您查看活动的生命周期,当设备旋转时,活动会重新启动,因此之后onPause(),活动会经历完整的重新启动周期(onStop()并且onRestart()也被调用),因此在这种情况下您可以设置一些值取决于调用了哪些函数,或检查设备的方向。

此外,当活动进入后台时,onPause()被调用,当活动不再对用户可见时,onStop()被调用,这是由于特定原因,应用程序可以通过设置一些变量来检查。为了完全理解,研究活动生命周期备用链接

但是为什么你需要知道活动发生了什么?通过覆盖适当的函数并提供适当的布局资源,您不需要知道大多数情况下发生了什么。

对于方向,您也可以使用getRotation方法获取方向。

于 2012-05-19T03:36:10.190 回答