在我的主要活動中,在onStop下,我設置了myVar = true。在onResume中,我檢查myVar是否爲true並執行某些操作。onStop沒有被調用...主頁按鈕按下
如果您在我的主要活動中點擊主頁按鈕並從主屏幕/應用程序抽屜再次啓動它,它可以正常工作。
如果您在不同的活動中點擊主頁按鈕並從主屏幕/應用程序抽屜重新啓動主頁按鈕,它會顯示主要活動,因爲我在主要活動和android:finishOnTaskLaunch上設置了clearTaskOnLaunch =「true」 =「true」設置在我的其他活動上。但是,當主按鈕被按下時,它在主要活動中看起來並沒有打到onStop。
我開始結果的其他活動。如果結果代碼= result_ok或result_canceled,我設置myVar = false。但是...如果home按鈕被按下,它不應該設置結果並執行onActivityResult。
任何想法如何解決這個問題?
編輯:
above onCreate.. I set startNew = true;
@Override
public void onStop() {
super.onStop();
startNew = true;
}
@Override
public void onRestart() {
super.onRestart();
if (startNew) {
getCurrentDate(0);
updateDisplay();
fillData();
}
}
其他唯一的參考startNew,是我的onActivityResult方法,如果這是從我的主要活動推出的活動返回要麼RESULT_OK或RESULT_CANCELED,我設置startNew =假。
我試圖確保每次我的應用程序從主屏幕/應用程序抽屜啓動時,它都會運行這3種方法。
我改變它是安全的,但我從來沒有注意到兩者之間的區別,我用它的東西。 – Roger 2011-04-11 18:21:25
根據文檔,onStop()不保證被調用,但onPause()是。從Honeycomb開始,這改變了... onStop()現在將被保證被調用,但是如果你想支持運行早期版本的設備,你需要相應的編碼:http://developer.android.com/reference/android/app /Activity.html – BonanzaDriver 2011-04-11 20:44:25
每*什麼*文檔? – 2014-08-12 22:46:59