まず、テーブルビューのセルをrecyclerviewまたはビューホルダーで再利用していることを確認する必要があります。それでは、画像の扱いや画像のキャッシュの複雑さをすべて軽減するPicassoを使用することをお勧めします。
これは私が私のプロジェクトの一つにアダプタのいずれかにやったことです:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
CoverImage coverImage = coverImages.get(position);
ViewHolder holder;
if (convertView == null) {
holder = new ViewHolder();
convertView = LayoutInflater.from(getContext()).inflate(R.layout.list_item_cover_image, parent, false);
holder.nameTextView = (TextView) convertView.findViewById(R.id.coverImageNameTextView);
holder.coverImageView = (ImageView) convertView.findViewById(R.id.coverImageView);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.nameTextView.setText(coverImage.getName());
com.tasksforce.honeydo.parse.model.CoverImage customCoverImage = User.currentUser().getCoverPhotoWithKey(coverImage.getKey());
if (customCoverImage != null && customCoverImage.getImage() != null) {
Picasso.with(getContext())
.load(customCoverImage.getImage()
.getUrl())
.into(holder.coverImageView);
} else {
try {
holder.coverImageView.setImageBitmap(ImageUtils.getBitmapFromAssets(getContext(), coverImage.getKey()));
} catch (IOException e) {
}
}
return convertView;
}
あなたがコードから見ることができるように、私は、細胞を再利用し、その後、私はまた、(画像をロードするためにピカソを使用あなたのコードが同様に見えるようにparse-serverを使用してください)