我有一个Activity启动一个异步任务。允许以纵向或横向方向显示活动。当方向改变时,Activity 将被销毁并重新创建。无论方向改变多少次,任务都会继续工作。它还成功地将结果返回给活动(根据 CommonsWare 的回答)http://goo.gl/WF1yW).
我想要实现的是:当活动被销毁时,因为申请即将关闭- 任务应该被取消。然而,当活动因以下原因被破坏时方向改变- 任务不应被取消。
基本上问题是如何区分两种情况:应用程序正在关闭/方向改变。
在这两种情况下,都会调用 onDestroy() 方法,并且没有简单的方法来检查 isChangingOrientation() 等内容...
附:如有必要,我还可以考虑采用完全不同的方法。
您可以使用isFinishing()
方法,检查活动是否将被终止或onDestroy()
由于方向改变而刚刚调用的方法
@Override
protected void onDestroy() {
super.onDestroy();
if(isFinishing()){
Log.i("DEBUG", "App will Terminate ");
}else{
Log.i("DEBUG", "Orientation changed");
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)