-1

所以我有这样的请求队列,带有'com.android.volley:volley:1.1.1'和permission.INTERNET

    public TextView txt;
    public String text="";
    private static final String 
    url="http://192.168.100.7/diari/tampil_penyakit.php";
    public RequestQueue requestQueue;
    public StringRequest stringRequest;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        txt=(TextView) findViewById(R.id.txt);
        requestQueue= Volley.newRequestQueue(MainActivity.this);
        stringRequest= new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {
            @Override
            public void onResponse(String response) {
                    text=response;
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                text="Error";
            }
        });
        requestQueue.add(stringRequest);
        text=text+" empty";
        txt.setText(text);
    }

但是 txt 只显示“空”,我已经用邮递员尝试了 url,有人可以帮我吗

4

1 回答 1

0

将您的 onResponse 更改为此:

stringRequest= new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {
            @Override
            public void onResponse(String response) {
                    text=response;
                    text=text+" empty";
                    txt.setText(text);
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                text="Error";
            }

它不起作用,因为您基本上所做的是声明变量 text 像 text=""; 然后设置你的队列,在设置你的 textview 的文本与你的空变量之后,而不等待来自服务器的响应。

于 2019-06-21T22:01:55.653 回答