Blink ImageLoader изображение при нажатии кнопки слушателя
Я должен реализовать один код для 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();
}
}) {