【发布时间】:2011-04-23 11:38:07
【问题描述】:
我有一个启动一些异步任务的活动。我希望这些任务在“正常”销毁我的 Activity 时停止(例如调用完成()/用户按下后退按钮等),但在用户仅旋转设备时继续运行。
取消这些任务并处理旋转工作正常,我只是无法将两者结合起来。
那么有没有办法在“onDestroy()”回调期间告知 Activity 是由于配置更改(旋转)或其他原因(例如后退按钮)而被销毁的?
【问题讨论】:
我有一个启动一些异步任务的活动。我希望这些任务在“正常”销毁我的 Activity 时停止(例如调用完成()/用户按下后退按钮等),但在用户仅旋转设备时继续运行。
取消这些任务并处理旋转工作正常,我只是无法将两者结合起来。
那么有没有办法在“onDestroy()”回调期间告知 Activity 是由于配置更改(旋转)或其他原因(例如后退按钮)而被销毁的?
【问题讨论】:
您可以在您的Activity 上致电isChangingConfigurations()。
【讨论】:
onRetainNonConfigurationInstance() 中设置一个布尔值,因为只有在配置更改正在进行时才会调用它。