Условные элементы пользовательского интерфейса в адаптере RecyclerView в зависимости от положения - PullRequest
0 голосов
/ 24 апреля 2019

Я создаю приложение для списка лидеров и хотел бы показать значки трофеев за первое, второе и третье места.

Я бы хотел сделать это в RecyclerView, не имея нескольких адаптеров.

Ответы [ 2 ]

0 голосов
/ 24 апреля 2019

В вашем методе 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
    }
}
0 голосов
/ 24 апреля 2019

Внутри ваших адаптеров 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 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...