开始一个新的 activity 并关闭当前的带有清除顶部标志的不工作

Starting a new activity and closing the current one with clear top flag in not working

在 activity 中,它使用 StringRequest 用于 Volley

当我在 onResponse 方法中收到来自服务器的响应时

我想关闭当前的activity并开始一个新的

问题是在我收到回复后,新的 activity 开始了

但如果我点击后退按钮,我会返回到应该关闭的前一个 activity

这就是我正在做的事情

StringRequest stringRequest=new StringRequest(Request.Method.POST,url,new Response.Listener<String>(){
                    @Override
                    public void onResponse(String response) {
                        loading.dismiss();

                        Log.e("spool",response);

                        try {
                            JSONObject json=new JSONObject(response);

                            if(json.getInt(LoginActivity.TAG_SUCCESS)==1)
                            {
                                Toast.makeText(RegisterActivity.this,json.getString("message"),Toast.LENGTH_SHORT).show();
                                Intent intent=new Intent(RegisterActivity.this,LoginActivity.class);
                                intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                                startActivity(intent);
                            }
                            else
                                Toast.makeText(RegisterActivity.this,json.getString("message"),Toast.LENGTH_SHORT).show();
                        }
                        catch (JSONException e)
                        {
                            e.printStackTrace();
                        }

                    }
                },....

感谢您的宝贵时间

您错过了 startActivity(intent);

之后的 finish() 电话

此外,如果您随后要开始新的 activity,则显示 Toast 消息也不是一个好主意。 Toast 消息只会显示几毫秒。