RecyclerView适配器中基于位置的条件UI元素

时间:2019-04-24 01:59:57

标签: java android android-recyclerview

我正在构建排行榜应用程序,并希望显示第一,第二和第三名的奖杯图标。

我希望能够在RecyclerView中做到这一点,而不必具有多个适配器。

2 个答案:

答案 0 :(得分:0)

在适配器ViewHolder中,您将有一个position。在Java中,我相信您可以使用viewHolder.getPosition()

进行访问

拥有position后,您可以创建如下语句

if (position == 0) { //ADD FIRST PLACE ICON } 
else if (position == 1) { //ADD SECOND PLACE ICON }
else if (position == 2) { //ADD THIRD PLACE ICON } 
else { //HIDE TROPHY ICON }

答案 1 :(得分:0)

在recyclerview适配器的onBindViewHolder()方法中,使用该位置显示/隐藏项目视图:

@Override
public void onBindViewHolder(ItemViewHolder holder, int position) {

    if (position == 0) {
        // Show 1st place trophy

    } else if (position == 1) {
        // Show 2nd place trophy

    } else if (position == 2) {
        // Show 3rd place trophy

    } else {
        // Hide trophy
    }
}