Как отображать элементы в виде списка только при одинаковой последовательности - PullRequest
0 голосов
/ 06 марта 2019

Я хочу отображать «лучшие» ниже только те комментарии, которые соответствуют последовательности трех лучших комментариев.

CommentAdapter

   for (GoodsComment num : list) {
            if (item.getSeq() == num.getSeq()) {
                holder.txtBest.setVisibility(View.VISIBLE);
            } else {
                holder.txtBest.setVisibility(View.GONE);
            }
        }

Этот код работает, но только один

Ответы [ 3 ]

0 голосов
/ 06 марта 2019

Обновляете ли вы элемент списка элемент каждый раз после цикла for?

0 голосов
/ 06 марта 2019

Предполагая, что вы делаете это внутри адаптера, вы не должны использовать цикл for. Создайте массив, содержащий порядковые номера лучших комментариев, и поместите его в качестве переменной в адаптер.

Затем в адаптере getView () (для Listview) или bindView () (для RecyclerView) проверяют, находится ли порядковый номер в массиве, который вы создали ранее.

Это должно показать «лучший» флаг во всех соответствующих строках.

0 голосов
/ 06 марта 2019

попробуйте использовать целочисленный флаг и каждый раз увеличивать флаг, затем проверять, равен ли флаг = 3 или нет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...