【已解决】 喜马拉雅项目中 获取推荐内容到 RecyclerView中,为什么RecyclerView不能下拉刷新?
按照b站视频跟着敲的,现在能获取到推荐内容,但是RecyclerView 向下滑动的时候没有加载出更多的 item(就显示十个)。
为什么不能下拉刷新呢? 我切换顶部指示器后RecyclerView是有刷新的,但还是不可以下拉刷新(下拉也拉不动)。
我首先检查了Adapter,和视频内一样,其次我看了是不是RecyclerView布局没有matchparent,也没有问题。
后来我在想是不是现在喜马拉雅的推荐每次只会传过来十个?
求大佬们帮个忙,看看是哪里有问题,小弟感激不尽。
Adapter:
public class RecommendListAdapter extends RecyclerView.Adapter<RecommendListAdapter.InnerHolder> {
private List<Album> mData = new ArrayList<>();
@NonNull
@Override
public InnerHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
//这里载入View
View itemView = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_recommend, parent, false);
return new InnerHolder(itemView);
}
@Override
public void onBindViewHolder(@NonNull InnerHolder holder, int position) {
//这里设置数据
holder.itemView.setTag(position);//item的position
holder.setData(mData.get(position));
}
@Override
public int getItemCount() {
if (mData != null) {
return mData.size(); //返回要显示的 项目个数
}
return 0;
}
public void setData(List<Album> albumList) {
if (mData != null) {
mData.clear();
mData.addAll(albumList);
}
//更新一下UI
notifyDataSetChanged();
}
public class InnerHolder extends RecyclerView.ViewHolder {
public InnerHolder(@NonNull View itemView) {
super(itemView);
}
public void setData(Album album) {
//绑定控件,设置数据
//专辑的icon
ImageView imageViewcover = itemView.findViewById(R.id.album_cover);
//标题
TextView title = itemView.findViewById(R.id.album_title);
//描述
TextView description = itemView.findViewById(R.id.album_description_tv);
//播放数量
TextView playcount = itemView.findViewById(R.id.album_playcount);
//专辑内容数量
TextView content_size = itemView.findViewById(R.id.album_content_size);
title.setText(album.getAlbumTitle());
description.setText(album.getAlbumIntro());
playcount.setText(album.getPlayCount() + "");
content_size.setText(album.getIncludeTrackCount() + "");
Picasso.with(itemView.getContext()).load(album.getCoverUrlLarge()).into(imageViewcover);
}
}
}
上布局代码,另外我问你一下:刷新是哪个控件完成的?
结案了...,我想的很对 从喜马拉雅获取的推荐内容只有十条,但是我的习惯不好,没有尝试打log 看一下 条数 而是在自己推理。感谢大佬的指点!这个坏毛病得改一改。
(鞠躬九十度)
item布局:
fragment布局:
刷新的UI是由哪个控件完成的
有用下拉刷新的控件吗