Volley GetRequest将位图设置为imageview

问题描述 投票:0回答:1

我已经在.Net Core中制作了一个后端API,其中所有内容都首先由代码制成。因此,我有一个Entity Framework设置,其他所有内容都在此解决方案中完成。一个实体(足球运动员)具有一些属性,其中之一是图像。

API post方法将此图像设置为字节数组,一旦尝试获取,您将收到一个位图。

现在,我正在使用Volley Library的Android Java应用程序中尝试执行Get请求。到目前为止,一切正常,除了获取图像。

这是我现在除了图像以外的所有代码:

private void retrievePlayers(String url) {

    showSimpleProgressDialog(this, "Loading...", "Fetching Json", false);

    StringRequest stringRequest = new StringRequest(Request.Method.GET, URLstring + url,
            new Response.Listener<String>() {
                @Override
                public void onResponse(String response) {

                    Log.d("strrrrr", ">>" + response);

                    try {

                        JSONObject obj = new JSONObject(response);

                        playerArrayList = new ArrayList<>();
                        JSONArray dataArray = obj.getJSONArray("players");

                        for (int i = 0; i < dataArray.length(); i++) {

                            Player playerModel = new Player();
                            JSONObject dataobj = dataArray.getJSONObject(i);

                            playerModel.setFirstName(dataobj.getString("firstName"));
                            playerModel.setLastName(dataobj.getString("lastName"));
                            playerModel.setShirtNumber(dataobj.getString("backNumber"));

                            playerArrayList.add(playerModel);

                        }
                        adapter = new MyViewAdapter(getApplicationContext(), playerArrayList);


                        pList.setHasFixedSize(true);
                        pList.setLayoutManager(linearLayoutManager);
                        pList.addItemDecoration(dividerItemDecoration);
                        pList.setAdapter(adapter);
                        removeSimpleProgressDialog();

                    } catch (JSONException e) {
                        e.printStackTrace();
                    }
                }
            },
            new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {
                    //displaying the error in toast if occurrs
                    Toast.makeText(getApplicationContext(), error.getMessage(), Toast.LENGTH_SHORT).show();
                }
            });

    // request queue
    RequestQueue requestQueue = Volley.newRequestQueue(this);
    requestQueue.add(stringRequest);
}

是否可以将接收到的位图设置为ImageView?

java android bitmap android-volley
1个回答
0
投票
ImageView mImg;
mImg = (ImageView) findViewById(R.id.(your xml img id));
mImg.setImageBitmap(img);
© www.soinside.com 2019 - 2024. All rights reserved.