我的android應用程序有3個屏幕。完成以前的活動按鈕點擊android
- 屏幕1(主屏幕)
- 屏幕2
- 屏幕3
屏幕1點開始屏幕2點屏幕2開始屏幕3.
我已經添加了一個名爲按鈕在屏幕3上退出。我想要的是當用戶按下此按鈕時,屏幕1和屏幕2的活動應該完成。
我的android應用程序有3個屏幕。完成以前的活動按鈕點擊android
屏幕1點開始屏幕2點屏幕2開始屏幕3.
我已經添加了一個名爲按鈕在屏幕3上退出。我想要的是當用戶按下此按鈕時,屏幕1和屏幕2的活動應該完成。
當您按屏幕3中的退出按鈕時,您可能會啓動另一個活動,該活動將會停止堆棧中的所有其他活動並將自行關閉。這是我的工作示例。
public class ExitActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (android.os.Build.VERSION.SDK_INT >= 21) {
finishAndRemoveTask();
} else {
finish();
}
}
public static void exitApplication(Context context) {
Intent intent = new Intent(context, ExitActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NO_ANIMATION | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
context.startActivity(intent);
}
}
所以你需要調用exitApplication
功能在您退出按鈕onClick
。
感謝兄弟的幫助 – Eagle
退出按鈕單擊寫入以下代碼:
Intent intent = new Intent(getApplicationContext(), Home.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
這將清除所有以前的活動。
假設'家庭'活動是屏幕三,那麼它將清除活動堆棧和*重新啓動*活動,這是解決方法,但不是確切的解決方案。 – Apurva
你想退出應用程序或清空你的活動堆棧? – sushildlh
當您將意圖傳遞給另一個活動時完成第一個activity.like Intent i = new Intent(getApplicationContext(),Screen2.class); \t \t \t \t startActivity(i); \t \t \t \t finish();你在screen1.class中編寫這段代碼,所以Screen1在那裏完成activity.tell它它正在工作。 –
按退出按鈕屏幕3會發生什麼情況? – Apurva