成功注册到应用程序后,Android Activity 没有变化

Posted

技术标签:

【中文标题】成功注册到应用程序后,Android Activity 没有变化【英文标题】:Android activity is not changing after registering to the application successfully 【发布时间】:2021-11-06 05:51:47 【问题描述】:

我创建了一个具有注册活动的应用程序。当我点击应用程序上的注册按钮时,用户的详细信息被插入到数据库中,但活动不会改变。对于应用程序上的登录,活动按预期从登录活动更改为主页活动,但对于注册活动则没有。

代码如下:

StringRequest stringRequest = new StringRequest(Request.Method.POST, URL, new Response.Listener<String>()
                @Override
                public void onResponse(String response) 
                    Toast.makeText(register.this, response, Toast.LENGTH_SHORT).show();

                    if (response.equals("success")) 
                        Toast.makeText(register.this, response, Toast.LENGTH_LONG).show();
                        btnRegister.setClickable(false);

                        Intent intent = new Intent(register.this, MainActivity.class);
                        startActivity(intent);
                        finish();

                     else if (response.equals("failure")) 
                        tvStatus.setText("Registration unsuccesful!");
                        Toast.makeText(register.this, response, Toast.LENGTH_SHORT).show();

                    
                
            

【问题讨论】:

确定一下,您确实看到屏幕上出现了一个吐司? @SergioPardo if statement 之前的吐司出现在屏幕上,但if statement 中的吐司却没有。也就是说if statement里面的代码没有被执行。 第一个 toast 显示的是什么? @Christopher 它正在显示来自我创建并按预期工作的 php API 的响应。如果注册成功,API 将返回“成功”,否则返回“失败”。问题是 if 语句中的内容不会被执行,因为我不知道为什么。 你能把服务的响应放在这里吗?恰好出现在吐司上的字符串。我觉得这可能是您必须比较忽略大写字母或文本上的一些额外空格。 【参考方案1】:

在我看来,您的回答可能不是您所期望的,我没有使用您使用的 Listener,但通过查看其他一些问题,我发现了这一点:

JSONObject jsonResponse = new JSONObject(response);
boolean success = jsonResponse.getBoolean("success");

所以请检查这是否适合你,而不是

if (response.equals("success")) 

这个:

JSONObject jsonResponse = new JSONObject(response);
boolean success = jsonResponse.getBoolean("success");
if (success) 
else

您可能需要为此添加一个 try/catch。

【讨论】:

以上是关于成功注册到应用程序后,Android Activity 没有变化的主要内容,如果未能解决你的问题,请参考以下文章

android logcat中不显示log.d我的程序代码中包含Log.d(TAG,"activi

Android fragment获取Context的问题

登录成功后隐藏登录页面并在android中显示main_activity

Ambiguous method call. Both findViewById (int) in AppCompatActivity and findViewById (int) in Activi

Android项目之天气预报 的实现分析

回到应用程序时,Android 后台活动消失