我正在使用firebase recyclerview,我想为前三个项目创建不同的布局。我已经看到关于这个话题已经有很多问题,但即使看着它我也无法解决我的问题。我的问题是我可以获得3种不同的布局,但是当我去滚动时,垃圾项目的布局与第一次布局相同,但这不一定会发生。
我已经看到它需要实现getItemViewType,但是我的代码我不能。 我肯定在我的代码中做了一些事情,谁能告诉我要修复什么?谢谢大家!
public class RankingViewHolder extends RecyclerView.ViewHolder {
TextView name_txt, txt_number;
TextView point_txt;
CardView card;
LinearLayout layout;
ImageView primi_img;
CircleImageView profile_img;
ProgressBar progressBar;
String position_;
public RankingViewHolder(View itemView) {
super(itemView);
name_txt = (TextView) itemView.findViewById(R.id.ranking_name);
point_txt = (TextView) itemView.findViewById(R.id.ranking_point);
txt_number = (TextView) itemView.findViewById(R.id.ranking_txt_number);
card = (CardView) itemView.findViewById(R.id.ranking_card);
layout = (LinearLayout) itemView.findViewById(R.id.ranking_layout);
primi_img = (ImageView) itemView.findViewById(R.id.ranking_img);
profile_img = (CircleImageView) itemView.findViewById(R.id.ranking_profile_img);
progressBar = (ProgressBar) itemView.findViewById(R.id.ranking_progress_img);
}
public void bindToPost(RankingItem rankingItem, final int position, int count) {
point_txt.setText(String.valueOf(rankingItem.point));
position_ = String.valueOf(getAdapterPosition());
txt_number.setText(position_);
if (position_.equals("1")){
....
}
if (position_.equals("2")){
.....
}
if (position_.equals("3")){
....
}
}