我想我剛剛發現一個非常奇怪的錯誤...但它正好可以somekind的功能,我從來沒有聽說過的..安卓:FLAG_ACTIVITY_CLEAR_TOP和android:launchMode =「singleInstance」
在我的應用程序如果我對AndroidManifest與Android任何活動:launchMode =「singleInstance」當您嘗試「乾淨」堆棧到某一點用下面的代碼:
Intent intent = new Intent(this, Xpto.class);
intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP
| Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
它轉到該活動..但是當你按回去,它回到以前..應該已經完成...
實施例:
A - >乙 - 「ç
然後從C I調用與Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP在Manifest上有一個singleInstance。它去A,但它只把它帶到前面..並沒有完成C和B.
有人可以解釋這種行爲嗎?
我所調用的Xpto類是當時堆棧的根活動。
感謝
再次閱讀我的問題。沒有提供答案。 – neteinstein 2012-02-21 10:29:00
我相信你要問的是,在你描述的場景中,爲什麼當你開始活動A(這是根活動)時,活動的B和C沒有完成。我試圖解釋的,也許很糟糕的是,文檔描述了singleInstance的啓動模式和flag FLAG_ACTIVITY_SINGLE_TOP設置,活動B和C將不會完成。如果您想完成活動B和C,則必須將啓動模式設置爲多個實例,而不是設置標誌FLAG_ACTIVITY_SINGLE_TOP。希望這可以幫助。 – groffhibbitz 2012-02-23 22:50:23