Android:意图标志销毁活动并开始新的活动

所以我有一个login活动当我input用户名和密码,然后点击loginbutton,我开始一个新的活动,这个活动膨胀了一个有着USER_NAME和PASSWORD EditText Views的login.xml布局。

新的活动有一个注销button,基本上只是启动前面的活动,如下所示:

Intent loginIntent = new Intent(getActivity(), Login.class); loginIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); getActivity().startActivity(loginIntent); 

根据Android文档,该标志执行以下操作:

http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_CLEAR_TOP

如果已设置,并且正在启动的活动已在当前任务中运行,则不会启动该活动的新实例,而是closures其上的所有其他活动,并将此Intent交付给(现在开启顶端)旧活动作为一个新的意图。

问题是,我注销后,用户名和密码仍然出现在EditText Views中,是否有一个标志销毁login活动,只是开始一个新的或有办法重置字段,每当我注销? 哪种方法更好?

Solutions Collecting From Web of "Android:意图标志销毁活动并开始新的活动"

你有两个select:

1 – 成功login后终止login活动

 Intent loginIntent = new Intent(getActivity(), Login.class); loginIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); getActivity().startActivity(loginIntent); finish(); 

2 – 清空值,然后开始新的活动

 edittext_username.setText(""); edittext_password.setText(""); 

如果您仅支持API级别11+,则应该可以使用FLAG_ACTIVITY_CLEAR_TASK 。 这将完成所有任务中的所有现有活动,并创buildlogin活动的新实例。