SubscribeShowAdapter.java
5.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
package com.cnlive.goldenline.ui.adapter;
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.view.ViewGroup;
import com.cnlive.goldenline.R;
import com.cnlive.goldenline.model.response.ThreatreInfoResponse;
import com.cnlive.goldenline.model.response.bean.LiveShowBean;
import com.cnlive.goldenline.ui.adapter.viewholder.CommentTitleViewHolder;
import com.cnlive.goldenline.ui.adapter.viewholder.CommentViewHolder;
import com.cnlive.goldenline.ui.adapter.viewholder.DividerViewHolder;
import com.cnlive.goldenline.ui.adapter.viewholder.EmptyViewHolder;
import com.cnlive.goldenline.ui.adapter.viewholder.InterActionGridViewHolder;
import com.cnlive.goldenline.ui.adapter.viewholder.RecommendLiveShowViewHolder;
import com.cnlive.goldenline.ui.adapter.viewholder.SingleButtonViewHolder;
import com.cnlive.goldenline.ui.adapter.viewholder.SubscribeShowInfoViewHolder;
import com.cnlive.goldenline.ui.adapter.viewholder.TheatreBasicInfoViewHolder;
import com.cnlive.goldenline.ui.base.BaseRecyclerAdapter;
import com.cnlive.goldenline.ui.model.CommentBean;
import com.cnlive.goldenline.ui.model.CommentTitleBean;
import com.cnlive.goldenline.ui.model.DividerBean;
import com.cnlive.goldenline.ui.model.RecommendLiveShowBean;
import com.cnlive.goldenline.ui.model.RecyclerViewNormalBean;
import com.cnlive.goldenline.ui.model.SingleButtonBean;
import java.util.List;
/**
* Description:重磅预约详情 适配器
* Created on 2017/3/5
* Author : 萧
*/
public class SubscribeShowAdapter extends BaseRecyclerAdapter<RecyclerViewNormalBean> {
private static final String TAG = "SubscribeShowAdapter";
public SubscribeShowAdapter(Context context) {
super(context);
}
@Override
public int getItemViewType(int position) {
return getItem(position).getDataType();
}
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view;
switch (viewType) {
case ViewType.TYPE_DIVIDER: //分割线
view = inflater.inflate(R.layout.layout_divider, parent, false);
return new DividerViewHolder(view);
case ViewType.TYPE_RECOMMEND: //点播推荐
view = inflater.inflate(R.layout.layout_subscribeshow_recommendliveshow_item, parent, false);
return new RecommendLiveShowViewHolder(view);
case ViewType.TYPE_THEATREBASICINFO: //剧院基础信息 头像 名称 粉丝数
view = inflater.inflate(R.layout.layout_theatre_basicinfo, parent, false);
return new TheatreBasicInfoViewHolder(view);
case ViewType.TYPE_COMMENT_TITLE: //评论列表标题栏
view = inflater.inflate(R.layout.layout_comment_title, parent, false);
return new CommentTitleViewHolder(view);
case ViewType.TYPE_COMMENT: //评论
view = inflater.inflate(R.layout.layout_comment_item, parent, false);
return new CommentViewHolder(view);
case ViewType.TYPE_INFO://节目信息
view = inflater.inflate(R.layout.layout_subscribeshow_basicinfo, parent, false);
return new SubscribeShowInfoViewHolder(view);
case ViewType.TYPE_OTHER://其余
view = inflater.inflate(R.layout.layout_single_button, parent, false);
return new SingleButtonViewHolder(view);
case ViewType.TYPE_INTERACTION: //互动
view = inflater.inflate(R.layout.layout_interaction_info, parent, false);
return new InterActionGridViewHolder(view);
default:
return new EmptyViewHolder(null);
}
}
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
RecyclerViewNormalBean data = getItem(position);
if (holder instanceof DividerViewHolder) {
DividerViewHolder dividerViewHolder = (DividerViewHolder) holder;
dividerViewHolder.show(mContext, (DividerBean) data.getT());
} else if (holder instanceof SingleButtonViewHolder) {
SingleButtonViewHolder btnHolder = (SingleButtonViewHolder) holder;
btnHolder.show(mContext, (SingleButtonBean) data.getT(), position);
} else if (holder instanceof CommentViewHolder) { //评论---->未完成
CommentViewHolder commentHolder = (CommentViewHolder) holder;
commentHolder.show(mContext, (CommentBean) data.getT());
} else if (holder instanceof CommentTitleViewHolder) { //评论标题holder--->完成
CommentTitleViewHolder titleHolder = (CommentTitleViewHolder) holder;
titleHolder.show(mContext, (CommentTitleBean) data.getT());
} else if (holder instanceof RecommendLiveShowViewHolder) { //推荐直播
RecommendLiveShowViewHolder recLiveHolder = (RecommendLiveShowViewHolder) holder;
recLiveHolder.show(mContext, (RecommendLiveShowBean) data.getT());
} else if (holder instanceof SubscribeShowInfoViewHolder) { //预约holder---->完成
SubscribeShowInfoViewHolder subsHolder = (SubscribeShowInfoViewHolder) holder;
subsHolder.show(mContext, (LiveShowBean) data.getT());
} else if (holder instanceof InterActionGridViewHolder) { //显示已预约的人数和头像--->完成
InterActionGridViewHolder interActionHolder = (InterActionGridViewHolder) holder;
interActionHolder.show(mContext, (List<String>) data.getT());
} else if (holder instanceof TheatreBasicInfoViewHolder) { //剧院基本信息展示holder---->完成
TheatreBasicInfoViewHolder viewHolder = (TheatreBasicInfoViewHolder) holder;
viewHolder.show(mContext, (ThreatreInfoResponse) data.getT(), position);
}
}
}