這是一個小問題,但我發(fā)現(xiàn)很難解決這個問題。我有多個活動。例如 AB 和 C。當(dāng)應(yīng)用程序啟動時,A 被打開,點(diǎn)擊按鈕會將我重定向到活動 B,然后從 B 點(diǎn)擊另一個按鈕會將我?guī)У?C。按下返回現(xiàn)在將我?guī)Щ?B 和再次按下“后退”按鈕會將我?guī)У街饕顒拥?A?,F(xiàn)在,如果我按下后退按鈕,應(yīng)用程序應(yīng)該退出......它會在 B 和 A 之間創(chuàng)建循環(huán)并且永遠(yuǎn)不會退出應(yīng)用程序。我已經(jīng)使用了以下方法方法 1:使用this.finish沒有幫助的 onBackPressed方法二:android:nohistory = true在manifest中使用但是,如果我這樣做,那么從 C 活動中它會直接將我?guī)У轿也幌胍?A。方法 2. 使用 Intent intent = new Intent(Intent.ACTION_MAIN); //to clear all old opened activities intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(intent); finish();當(dāng)我使用它時,每次它在我的設(shè)備中打開時請任何人幫忙。這是我現(xiàn)在在 Mainactivity 中的代碼 @Override public void onBackPressed() { finish(); super.onBackPressed(); }但它也不起作用,它會在 A 和 B 活動之間創(chuàng)建循環(huán)。
1 回答

滄海一幻覺
TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超5個贊
你的代碼(在MainActivity)不正確,把完成()后super.onBackPressed()
肯定是 :
@Override
public void onBackPressed() {
super.onBackPressed();
finishAffinity(); // or finish();
}
添加回答
舉報
0/150
提交
取消