public class FenleiRecle extends RecyclerView.Adapter<RecyclerView.ViewHolder> implements XBanner.XBannerAdapter {
private boolean flag;
private Context context;
private List<Beantwo.CategoryListBean> arr;
ArrayList<String> bannerarr;
public FenleiRecle(Context context, List<Beantwo.CategoryListBean> arr, ArrayList<String> bannerarr) {
this.context = context;
this.arr = arr;
this.bannerarr = bannerarr;
}
@Override
public int getItemViewType(int position) {
if (position==0) {
return 0;
} else {
return 1;
}
}
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
if (viewType == 1) {
View view = View.inflate(context, R.layout.resyvertical, null);
MyVIewHolder myVIewHolder = new MyVIewHolder(view);
return myVIewHolder;
}else{
View inflate = View.inflate(context, R.layout.videotoubuju, null);
ViewHolder1 viewHolder1 = new ViewHolder1(inflate);
return viewHolder1;
}
}
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
if (holder instanceof MyVIewHolder){
//实现每一条横穿横向的数据展示
if(arr.get(position).getDesc().equals("热门音乐")){
((MyVIewHolder) holder).twofenlei.setText("热门音乐");
Glide.with(context).load(R.drawable.c).into(((MyVIewHolder) holder).touxiang);
((MyVIewHolder) holder).twoname.setText(arr.get(position).getMusic_info().getTitle());
((MyVIewHolder) holder).twonum.setText(arr.get(position).getMusic_info().getUser_count()+"");
}else{
Glide.with(context).load(R.drawable.d).into(((MyVIewHolder) holder).touxiang);
((MyVIewHolder) holder).twofenlei.setText("热门挑战");
((MyVIewHolder) holder).twoname.setText(arr.get(position).getChallenge_info().getCha_name());
((MyVIewHolder) holder).twonum.setText(arr.get(position).getChallenge_info().getUser_count()+"");
}
//实现每一条横穿横向的数据展示
List<Beantwo.CategoryListBean.AwemeListBean> aweme_list = arr.get(position).getAweme_list();
LinearLayoutManager manager = new LinearLayoutManager(context,LinearLayoutManager.HORIZONTAL,false);
((MyVIewHolder) holder).onerecy.setLayoutManager(manager);
MyAdapter myAdapter = new MyAdapter(context, aweme_list);
((MyVIewHolder) holder).onerecy.setAdapter(myAdapter);
}else if(holder instanceof ViewHolder1){
if (!flag) {
((ViewHolder1) holder).mBannerNet.setData(bannerarr, null);
// 设置XBanner的页面切换特效
((ViewHolder1) holder).mBannerNet.setPageTransformer(Transformer.Default);
// 设置XBanner页面切换的时间,即动画时长
((ViewHolder1) holder).mBannerNet.setPageChangeDuration(2000);
((ViewHolder1) holder).mBannerNet.setmAdapter(this);
flag = true;
}else{
}
}
// Beantwo.CategoryListBean.AwemeListBean.VideoBean video = arr.get(position).getAweme_list().get(position).getVideo();
// if(video!=null){
// String url = video.getDownload_addr().getUrl_list().get(0);
// Log.e("chen", "twoonSuccesse:哈哈 "+url );
// String s = video.getCover().getUrl_list().get(0);
//
// //点击视频实现的文字
// boolean setUp = holder.shipin.setUp(url, JCVideoPlayer.SCREEN_LAYOUT_LIST, "抖起来");
// if (setUp) {
// //视频的起始图片
// Glide.with(context).load(s).into(holder.shipin.thumbImageView);
// }
// }
}
@Override
public int getItemCount() {
return arr.size();
}
//加载banner图片的适配器
@Override
public void loadBanner(XBanner banner, View view, int position) {
Glide.with(context).load(bannerarr.get(position)).into((ImageView) view);
}
class MyVIewHolder extends RecyclerView.ViewHolder{
private final RecyclerView onerecy;
private final SimpleDraweeView touxiang;
private final TextView twoname;
private final TextView twonum;
private final TextView twofenlei;
public MyVIewHolder(View itemView) {
super(itemView);
onerecy = itemView.findViewById(R.id.onerecy);
touxiang = itemView.findViewById(R.id.touxiang);
twoname = itemView.findViewById(R.id.twoname);
twonum = itemView.findViewById(R.id.twonum);
twofenlei = itemView.findViewById(R.id.twofenlei);
}
}
class ViewHolder1 extends RecyclerView.ViewHolder {
private final XBanner mBannerNet;
public ViewHolder1(View itemView) {
super(itemView);
mBannerNet = itemView.findViewById(R.id.banner_1);
}
}
}
RecyclerView多条目加载
最新推荐文章于 2018-07-01 15:11:00 发布