Android RecyclerView适配器性能低下
我的recyclerview出现性能问题,我已经了解到,recyclerview.Adapter的onBindViewHolder部分可能是问题的原因。我遇到的主要问题是滚动速度慢,有时会变得无响应。这是我的onBindViewHolderAndroid RecyclerView适配器性能低下,android,android-recyclerview,Android,Android Recyclerview,我的recyclerview出现性能问题,我已经了解到,recyclerview.Adapter的onBindViewHolder部分可能是问题的原因。我遇到的主要问题是滚动速度慢,有时会变得无响应。这是我的onBindViewHolder @Override public void onBindViewHolder(ArtistViewHolder holder, int position) { final Artist artist = artists.get(position);
@Override
public void onBindViewHolder(ArtistViewHolder holder, int position) {
final Artist artist = artists.get(position);
holder.getBinding().artistImage.setImageBitmap(null);
try {
holder.setImage(artist, (int) DimensionUtil.convertDpToPixel(context, 120), (int) DimensionUtil.convertDpToPixel(context, 120));
} catch (IOException e) {
e.printStackTrace();
}
if (position == artists.size() - 1) {
endOfListListener.EndOfListReached();
}
holder.getBinding().setArtistClickListener(listener);
holder.getBinding().setArtist(artist);
holder.getBinding().setPosition(position);
holder.getBinding().executePendingBindings();
}
是否有任何东西可以移动到其他地方以提高滚动性能?我知道,当您向下滚动列表时,onBindViewHolder中的每一项都会被频繁访问。这是因为您正在将图像(大图像)加载到recyclerview上。每次滚动recyclerview时,onbindviewholder都会附加图像。这是因为您正在recyclerview上加载图像(大图像)。每次滚动recyclerview时,onbindviewholder都会附加图像。Oh好的,您知道加载这些图像的地方比onbindviewholder好吗?防止onbindviewholder方法反复附加图像。只需将1个属性设置为recyclerview。myRecyclerView.SetRecyclerable(假);并在recyclerview上加载缩略图或小图像。这将提高性能和加载速度。哦,好的,你知道有比OnBindViewHolder更好的加载这些图像的地方吗?防止OnBindViewHolder方法一次又一次地附加图像。只需将1个属性设置为recyclerview。myRecyclerView.SetRecyclerable(假);并在recyclerview上加载缩略图或小图像。这将提高性能和加载速度。