Здравствуйте, я использовал анимацию для ArrayAdapter. Я хочу анимировать миниатюру при ее загрузке ... Однако каждый раз, когда загружается миниатюра списка, анимация запускается для каждого элемента адаптера массива. Как следствие, анимация каждого эскиза запускается 5 раз. Что мне нужно сделать, чтобы предотвратить запуск анимации при загрузке любого из элементов?Анимация ленивой загрузки ArrayAdapter
public View getView(int position, View item, ViewGroup parent){
ViewHolder holder;
Video video = mVideoList.get(position);
if(item == null)
{
item = mInflater.inflate(R.layout.adapter_recommended_videos, null);
holder = new ViewHolder();
holder.title = (TextView)item.findViewById(R.id.adapter_recommended_videos_textview);
holder.thumb = (ImageView)item.findViewById(R.id.adapter_recommended_videos_imageview);
holder.title.setTypeface(
Typeface.createFromAsset(mContext.getAssets(), "roboto_medium.ttf"));
item.setTag(holder);
}
else
{
holder = (ViewHolder) item.getTag();
}
holder.title.setText(video.getTitle());
ImageView iv = holder.thumb;
if (video.getThumb() != null) {
if(!mAnimationFlags.get(position)){
iv.startAnimation(mAnimation);
mAnimationFlags.set(position, true);
}
holder.thumb.setImageBitmap(video.getThumb());
} else {
holder.thumb.setImageResource(R.drawable.dummy_video_thumbnail);
}
return(item);
}
static class ViewHolder {
TextView title;
ImageView thumb;
}
Где вы определяете, что миниатюра загружена? – vorrtex
Я вызвал object.setView() внутри конструктора ArrayAdapter ... Но я уже решил это. См. Ответ – user2081338