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活动,只是开始一个新的或有办法重置字段,每当我注销? 哪种方法更好?

  • Android在后台播放音乐
  • 从Spotify意图开始歌曲
  • 意图和捆绑关系
  • 如何共享整个Android应用程序与共享意图
  • 如何使用意图更新活动?
  • 如何判断Intent.createChooserselect了哪个应用程序?
  • 如何以编程方式打开“蓝牙设置活动”?
  • 使用Intent在活动之间传递数据
  • 你有两个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活动的新实例。