Blink ImageLoader изображение при нажатии кнопки слушателя

ListView с изображением Я должен реализовать один код для ListView, где я использую одно изображение и три кнопки, поэтому мой запрос заключается в том, что, когда я нажимаю кнопку короткого списка, тогда изображение, которое используется в загрузчике, мигает. Есть два условия: одно - изображения на сервере, а второе - отсутствие изображения на сервере. Если на сервере нет изображения, то по умолчанию изображение будет отображаться в ImageView

  @Override
public View getView(final int position, View convertView, ViewGroup parent) {
    LayoutInflater inflater = context.getLayoutInflater();
    final View listViewItem = inflater.inflate(R.layout.custom_profile_match, null, true);

    // Session class instance
    session = new SessionManager(getContext());
    session.checkLogin();
    // get user data from session
    HashMap<String, String> user = session.getUserDetails();

    matri_id_by = user.get(SessionManager.KEY_EMAIL);
    str_gender = user.get(SessionManager.KEY_GENDER);

    String url1 = "https://www.maangal.com/thumb/thumb_";
    String url = url1 + pics[position];

    final ProgressBar PBar = (ProgressBar)listViewItem.findViewById(R.id.PBar);
    imageView = (NetworkImageView) listViewItem.findViewById(R.id.offer_image);
    imageLoader = CustomVolleyRequest.getInstance(this.getContext()).getImageLoader();
    if(str_gender.equalsIgnoreCase("Male")) {
        imageLoader.get(url, ImageLoader.getImageListener(imageView, R.drawable.image, R.drawable.girl));
    }
    else {
        imageLoader.get(url, ImageLoader.getImageListener(imageView, R.drawable.image, R.drawable.boy));
    }


    PBar.setVisibility(View.VISIBLE);

Создать экземпляр обработчика в главном потоке

    final Handler handler = new Handler();

Создать и начать новую тему

   new Thread(new Runnable() {
        public void run() {
            try{
                Thread.sleep(2000);
            }
            catch (Exception e) { } // Just catch the InterruptedException

Теперь мы используем обработчик для отправки сообщений в основной поток

            handler.post(new Runnable() {
                public void run() {
                    // Set the View's visibility back on the main UI Thread
                    PBar.setVisibility(View.INVISIBLE);
                }
            });
        }
    }).start();

    imageView.setImageUrl(url,imageLoader);
    TextView textViewId = (TextView) 
    listViewItem.findViewById(R.id.textViewId);
    TextView textViewName = (TextView) 
    listViewItem.findViewById(R.id.textViewName);

Список кнопок

 final Button btnSort =(Button) listViewItem.findViewById(R.id.btnshort);
    btnSort.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            btnSort.setText("Wait...");
            matri_id_to=ids[position]; 
            selectedPosition = position;
            shortlist();
        }
    });

private void shortlist(){
    StringRequest stringRequest = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {
        @Override
        public void onResponse(String response) {
            if(response.trim().equalsIgnoreCase("success")) {
                shortlist[selectedPosition] = "shortlisted";
                notifyDataSetChanged(); //this will refresh our list and your code for disabling the button will work
            }
        }
    },
            new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {
                    Toast.makeText(getContext(), error.toString(), Toast.LENGTH_LONG).show();
                }
            }) {

0 ответов

Другие вопросы по тегам