我创建了两个活动,即MainActivity和registration。 MainActivity用于登录,用户输入其名称和密码。 MainActivity有三个按钮
当我按下登录按钮时,用户将使用他输入的用户名和密码登录到他的帐户。单击注册按钮将导航到注册活动。注册活动有一个后退按钮,可以导航回主要活动。我在mainactivity中有第三个退出按钮,完全退出应用程序。我创建了一个退出按钮的实例,在退出按钮的setonclicklistener部分,我编写了以下代码。
Button exit=(Button)findViewById(R.id.exit);
exit.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();
System.exit(0);
}
});
现在,当我首先运行应用程序时,将显示mainactivity。单击注册按钮后,将显示注册活动。当我点击注册活动中的后退按钮时,我将被移动到mainactivity。然后从按下“退出”按钮时的主要活动中,应用程序关闭并显示主屏幕。当我再次打开我的应用程序,而不是看到主要活动时,我看到了注册活动。请帮帮我。当我再次点击我的应用程序图标而不是注册活动时,我需要看到主要活动。很抱歉这么长的问题。任何人都可以帮帮我..
答案 0 :(得分:1)
在MainActivity中的Android Manifest.xml文件中添加此标记
android:clearTaskOnLaunch="true"
答案 1 :(得分:0)
使用主要活动中的startActivityForResult()
api开始您的注册活动,无需在退出按钮的点击回拨中调用任何活动finish()
即可完成工作...
答案 2 :(得分:0)
尝试将此添加到您的注册活动:
public void onBackPressed() {
finish();
}
然后删除System.exit(0);
,因为您已调用finish();
答案 3 :(得分:0)
从http://developer.android.com/guide/topics/manifest/activity-element.html关于noHistory:
尝试在avtivity标记之间的Manifest.xml文件中添加它。
机器人:noHistory = “真”