在recyclerview中快速滚动图像

时间:2018-03-26 12:12:06

标签: android android-recyclerview android-viewholder

我正在使用recyclerview,其中我有适配器,它有3种类型的视图持有者,我根据viewHolder类绑定数据。为此,我使用下面给出的方法来检查哪个类型的持有者用于recyclerview项目

   @Override
public int getItemViewType(int position) {
    if (mDataset.get(position) == null)
        return VIEW__ITEM_PROGRESS;
    else if (mDataset.get(position).getIsPost())
        return VIEW_ITEM_POST;
    else
        return VIEW__ITEM_CALENDAR;
}

问题是当我使用这个和滚动,recyclerview项目随机播放和一个项目的图像切换与一些随机项目图像等。但是,当我使用这个

@Override
public int getItemViewType(int position) {
        return position;
}

我没有遇到这样的问题。 这是我的创作和绑定方法

 // Create new views (invoked by the layout manager)
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int VIEW_TYPE) {

    if (VIEW_TYPE == VIEW__ITEM_PROGRESS)
        return new ProgressViewHolder(inflater.inflate(R.layout.progressbar, parent, false));
    else if (VIEW_TYPE == VIEW_ITEM_POST)
        return new NewsFeedViewHolder(inflater.inflate(R.layout.item_newsfeed, parent, false));
    else
        return new CalendarViewHolder(inflater.inflate(R.layout.item_calendar, parent, false));
}

@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) {

    if (holder instanceof NewsFeedViewHolder) {
     //Do respective work
     }

} 任何人都可以帮助解决这个问题,这样我就可以解决这个问题以及viewHolders之间的区别。

谢谢!

0 个答案:

没有答案