2013-02-13 2 views
0

Я реализовал ленивую загрузку с использованием материалов onScrollListener. Одна из проблем, с которой я столкнулась, - это первый раз, когда активность запущена, изображения не отображаются. Изображения отображаются, когда я просматриваю список. Любая причина, по которой изображения не загружаются в первый раз. Пожалуйста, дайте мне знать. Благодарю.Android - реализация ленивой загрузки изображений с помощью onScrollListener в ListView

Код GetView() выглядит следующим образом:

public View getView(int position, View convertView, ViewGroup parent) { 
     View vi=convertView; 
     ContentListHolder contentHolder = null; 
     if(convertView==null) 
     { 
      vi = inflater.inflate(layoutItem, null); 

      contentHolder = new ContentListHolder(); 
      contentHolder.textview = (TextView)vi.findViewById(idText); 
      contentHolder.imageView =(ImageView)vi.findViewById(idImage); 

      vi.setTag(contentHolder); 
     } 
     else 
     { 
      contentHolder = (ContentListHolder) convertView.getTag(); 
     }   
     contentHolder.textview.setText("item "+position); 
     contentHolder.imageView.setImageResource(layoutstub); 
     Bitmap bitmap = imageLoader.getBitmapFromCache(data[position]); 
     notifyDataSetChanged(); 
     if(bitmap != null) 
     {   contentHolder.imageView.setImageBitmap(bitmap); 
     }  
     return vi; 
    } 
+1

просто разместить код адаптера, я имею в виду GetView код(). –

+0

Вы не должны использовать метод notifyDataSetChanged() в getView() – endian

+0

Я удалил notifyDataSetChanged(), но все еще имел ту же проблему. – user1182217

ответ

1

Это происходит только потому, что вы не установили тег для вашего ImageView.

Try:

contentHolder.imageView.setTag(bitmap); 
+0

Я пробовал этот код в методе getView(), но он не работает. – user1182217

+0

@ user1182217 дайте мне знать, почему вы берете растровое изображение из кеша? Вы не можете взять URL вместо этого? –

+0

Проверьте эту строку ... 'Bitmap bitmap = imageLoader.getBitmapFromCache (data [position]);'. Здесь данные представляют фактический URL. – user1182217

Смежные вопросы