zBa*_*hLe 10 android android-activity
我有2个活动,所以活动1转到活动2然后活动2我有一个退出按钮.但是当我点击它时,它只退出活动编号2并再次返回活动1.它基本上感觉就像我刚刚启动应用程序.我不知道为什么?
这是我的代码.
Button btExit = (Button) findViewById(R.id.btExit);
btExit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
System.exit(0);
}
});
Run Code Online (Sandbox Code Playgroud)
CRU*_*DER 45
System.exit(0);
Run Code Online (Sandbox Code Playgroud)
是一个终止Android应用程序的坏方法.Android在自己的操作系统中管理它
您可以通过相应的Intent调出Home应用程序:
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助
编辑: -
然后我想你的目标是完成所有堆积的活动..
这里是 :-
关闭所有以前的活动如下:
Intent intent = new Intent(this, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("Exit me", true);
startActivity(intent);
finish();
Run Code Online (Sandbox Code Playgroud)
然后在MainActivity onCreate()方法中添加此项以完成MainActivity
if( getIntent().getBooleanExtra("Exit me", false)){
finish();
}
Run Code Online (Sandbox Code Playgroud)
结果将与上述相同,但由于所有堆叠活动都已关闭,当您返回到应用程序时,它必须从您的主要活动(即启动器活动)开始.
希望这可以帮助.
不要用System.exit.
如果您希望用户从Activity我建议使用的任何应用程序中关闭应用程序,请先startActivityForResult检查返回值并onActivityResult在此处Activity调用finish().
| 归档时间: |
|
| 查看次数: |
24432 次 |
| 最近记录: |