2013-08-28 52 views
11

Tôi đã cố gắng để tích hợp thanh tiến trình trong ứng dụng ma.but tôi không thể theo dõi các cuộc gọi trở lại method.the thanh tiến trình luôn luôn hiển thị. Làm thế nào để ẩn khi hình ảnh được mã hóa?không thể ẩn thanh tiến trình sau khi tải hình ảnh trong picasso?

holder.imageView = (ImageView) localView.findViewById(R.id.imageView1); 
holder.progressBar = (ProgressBar) localView.findViewWithTag(R.id.progressBar1); 

localView.setTag(holder); 
url = getItem(paramInt); 
Picasso.with(getApplicationContext()) 
.load(url) 
.placeholder(R.drawable.ic_launcher) 
.error(R.drawable.ic_launcher) 
.fit() 
.into(holder.imageView, new Callback() { 

    @Override 
    public void onSuccess() { 
     holder.imageView.setVisibility(View.VISIBLE); 
     holder.progressBar.setVisibility(View.INVISIBLE);   
    } 

    @Override 
    public void onError() { 
     holder.progressBar.setVisibility(View.VISIBLE); 
     holder.imageView.setVisibility(View.INVISIBLE); 
    } 
}); 

Trả lời

3

Cuối cùng tôi cố định it.there là một lỗi trong một thư viện chính thức Picasso 2.0.0 beta.used

+1

Lưu ý: param Callback là một tài liệu tham khảo mạnh mẽ và sẽ ngăn chặn 'android.app.Activity' hoặc' android.app.Fragment' của bạn khỏi bị thu gom rác. Nếu bạn sử dụng phương pháp này, bạn nên thực hiện lệnh gọi 'Picasso.cancelRequest (ImageView) 'liền kề để ngăn chặn tình trạng rò rỉ tạm thời. –

+1

@Jabbar_Jigariyo làm thế nào để bạn gọi 'Picasso.cancelRequest (ImageView)' trong bộ điều hợp? không phải là thủ công này được tái chế bằng 'getView()' trên 'BaseAdapter'? – chip

+0

Bạn có tin tức gì về chủ đề này không? bạn có gặp bất kỳ vấn đề rò rỉ nào không ...? –

0

Hãy thử sử dụng VIEW.GONE thay vì VIEW.INVISIBLE

Các vấn đề liên quan