【问题标题】:Is there a way to differentiate between normal Activity destruction and one caused by rotation?有没有办法区分正常的活动破坏和由旋转引起的破坏?
【发布时间】:2011-04-23 11:38:07
【问题描述】:

我有一个启动一些异步任务的活动。我希望这些任务在“正常”销毁我的 Activity 时停止(例如调用完成()/用户按下后退按钮等),但在用户仅旋转设备时继续运行。

取消这些任务并处理旋转工作正常,我只是无法将两者结合起来。

那么有没有办法在“onDestroy()”回调期间告知 Activity 是由于配置更改(旋转)或其他原因(例如后退按钮)而被销毁的?

【问题讨论】:

    标签: android screen-rotation


    【解决方案1】:

    您可以在您的Activity 上致电isChangingConfigurations()

    【讨论】:

    • 哇,我错过了文档中的那个,正是我需要的,谢谢!
    • @Scythe:其实我也是。一两个月前我听说过它。我需要更新一些书来提及它。 :-)
    • 遗憾的是它直到 API 级别 11 才引入
    • @Joseph Earl:这就是我错过它的原因。 :-) 很抱歉,当我写下原始答案时没有注意到这一点。我以前使用的技巧是在 onRetainNonConfigurationInstance() 中设置一个布尔值,因为只有在配置更改正在进行时才会调用它。
    • 是的,这与我的建议一致。
    猜你喜欢
    • 1970-01-01
    • 2013-12-22
    • 1970-01-01
    • 2022-08-13
    • 1970-01-01
    • 1970-01-01
    • 2020-07-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多