Изменить ресурс ImageView на ImageView, щелкнуть переключатель - PullRequest
0 голосов
/ 08 марта 2019

base adapter to show data in grid view Я использую BaseAdapter, чтобы поместить данные в grid_view. в адаптере у меня есть image_view (значок списка пожеланий / img_wishlist), по которому можно щелкнуть.

если кликнул img_wishlist, я хочу запросить обновление данных на сервере, используя залп и возвращая строку «status».

если статус равен «добавлен», то этот img_wishlist изменит ресурсы на icon_wishlist_full.

если статус не равен "добавлен" ("удален"), тогда этот img_wishlist изменит ресурсы на icon_wishlist_o

Я создал этот скрипт внутри getView на моем BaseAdapter

img_wishlist.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            RequestQueue req = Volley.newRequestQueue(context);
            StringRequest sr = new StringRequest(Request.Method.POST,Konfigurasi.url_wishlist_update, new Response.Listener<String>() {
                @Override
                public void onResponse(String response) {
                    try {

                        JSONObject jo = new JSONObject(response);
                        String status = jo.getString("status");
                        if (status.equals("added")){
                            Toast.makeText(context,"added to your wishlist",Toast.LENGTH_SHORT).show();
                  //<---- here change resource image                 
                  img_wishlist.setImageResource(R.drawable.icon_wishlist_full);
                        }else{
                            Toast.makeText(context,"removed from your wishlist",Toast.LENGTH_SHORT).show();
                     //<---- here change resource image                
                     img_wishlist.setImageResource(R.drawable.icon_wishlist_o);
                        }
                    }catch (JSONException e){
                        e.printStackTrace();
                    }
                }
            }, new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {

                }
            }){
                @Override
                protected Map<String,String> getParams(){
                    Map<String,String> parang = new HashMap<String, String>();
                    parang.put("id_produk",id_produk.get(position));
                    parang.put("id_member",id_member);
                    return parang;
                }
            };
            req.add(sr);
        }
    });

Я пытался изменить ресурсы изображения, используя img_wishlist.setImageResource (R.drawable.icon_wishlist_full); , но все еще не работает.

как изменить imageResource после запроса обновления данных Vollery?

...