我正在做一个登录活动,它需要两个参数id和密码。 我通过服务器上的php API进行检查,在正确的登录凭证上进行响应成功。我想切换活动,如果我的文本=“成功”在我的textview(命名结果),它不工作。 我也试过了,通过在requestqueue后面添加下面的check(comment),仍然不起作用。 如果我的方法不正确,请告诉我最简单的方法来完成这项任务。切换服务器响应的活动
package com.example.nigam.quiz;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import com.android.volley.AuthFailureError;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.JsonObjectRequest;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.HashMap;
import java.util.Map;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button login=(Button)findViewById(R.id.button);
Button register=(Button)findViewById(R.id.button5);
final EditText userid = (EditText) findViewById(R.id.editText);
final EditText password= (EditText) findViewById(R.id.editText2);
final TextView result=(TextView)findViewById(R.id.textView);
Button startq= (Button) findViewById(R.id.button3);
final String url="http://192.168.44.223/Quiz/login.php";
final RequestQueue requestQueue= Volley.newRequestQueue(getApplicationContext());
login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final JSONObject jsonObject = new JSONObject();
try {
jsonObject.put("userid",userid.getText().toString());
jsonObject.put("password",password.getText().toString());
} catch (JSONException e) {
e.printStackTrace();
}
StringRequest stringRequest=new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
result.setText(response.toString());
if(result.getText().toString()=="Success")
{
Intent i=new Intent(MainActivity.this,Begins.class);
startActivity(i);
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
})
{
protected Map<String,String> getParams() throws AuthFailureError{
Map<String,String> parameters = new HashMap<String,String>();
parameters.put("creden",jsonObject.toString());
return parameters;
}
};
requestQueue.add(stringRequest);
/*
if(result.getText().toString()=="Success")
{
Intent i=new Intent(MainActivity.this,Begins.class);
startActivity(i);
}
*/
}
});
startq.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i=new Intent(MainActivity.this,Begins.class);
startActivity(i);
}
});
register.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i=new Intent(MainActivity.this,Main2Activity.class);
startActivity(i);
}
});
}
}
“它不工作”是什么意思?当你运行你的应用时会发生什么? –
可能的重复[如何比较Java中的字符串?](http://stackoverflow.com/questions/513832/how-do-i-compare-strings-in-java) –
为什么不比较'response'?当您立即开始一个新的活动并且结果 –