我的RecyclerView中有8个项目,其中包含图像和标题。 表现极其滞后。
我使用Picasso加载图像。图像甚至不是高分辨率导致滞后。
这是我的适配器:
public class CategoryAdapter extends RecyclerView.Adapter<CategoryAdapter.CategoryViewHolder> {
private Context context;
private List<Category> categories;
class CategoryViewHolder extends RecyclerView.ViewHolder {
TextView categoryTitle;
ImageView categoryImage;
CategoryViewHolder(View view) {
super(view);
categoryTitle = (TextView) view.findViewById(R.id.category_title);
categoryImage = (ImageView) view.findViewById(R.id.category_thumbnail);
}
}
public CategoryAdapter(Context context, List<Category> categories) {
this.context = context;
this.categories = categories;
}
@Override
public CategoryViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View itemView = LayoutInflater.from(parent.getContext()).inflate(R.layout.category_item, parent, false);
return new CategoryAdapter.CategoryViewHolder(itemView);
}
@Override
public void onBindViewHolder(final CategoryViewHolder holder, int position) {
Category category = categories.get(position);
holder.categoryTitle.setText(category.getCategoryTitle());
Picasso.with(context)
.load(category.getCategoryImage())
.into(holder.categoryImage);
}
@Override
public int getItemCount() {
return categories.size();
}
}
答案 0 :(得分:1)
您是否为活动设置了任何背景图片。如果是,则检查背景图片大小。可能是太大了。这会使它变得迟钝。
答案 1 :(得分:0)
一种方法是在从毕加索获取图像时异步调用该方法。请从更多信息How to asynchronously call a method in Java
中查看以下链接答案 2 :(得分:0)
在初始化recyclerview后,在行下面添加
,我面临着同样的问题recyclerView.setNestedScrollingEnabled(false);