8
我可以知道知道活動是否已被銷燬的正確方法是什麼?目前,我正在使用以下方法。正確的方法來知道活動是否已被銷燬
private volatile boolean isOnDestroyCalled = false;
@Override
protected void onDestroy() {
super.onDestroy();
isOnDestroyCalled = true;
}
public boolean isOnDestroyCalled() {
return this.isOnDestroyCalled;
}
有沒有其他方法比上述更好?
我不太明白你的問題,你什麼時候想知道這個?,你是在拖延這個活動還是在觸發銷燬? 你總是可以觸發Finish();摧毀它。以下是一些幫助:http://developer.android.com/reference/android/app/Activity.html – najk 2012-07-10 08:54:32
我需要自己瞭解這一點,因爲我有一個異步任務觸發了活動的回調,可能已被銷燬同時。我的解決方法是在活動中保留對回調的引用,對回調中的活動進行引用,並在活動被銷燬時清空回調中的ref,以便回調在null時不執行任何操作。 – qix 2014-04-25 11:36:42
@Linus到目前爲止最有名的技術是使用保留的實例片段:http://stackoverflow.com/questions/8417885/android-fragments-retaining-an-asynctask-during-screen-rotation-or-configuratio – 2014-04-26 02:19:15