Скрыть определенный элемент списка при поиске (фильтр)

У меня есть два одинаковых значения в моем представлении списка. Я скрываю от него одно значение. Но когда я ищу эту запись на панели поиска (я использовал Filer), он отображает эти обе записи, и эта проблема возникает только в Android 8.0 Oreo. могу ли я скрыть эту запись во время поиска.

Это мой код, с помощью которого я скрываю повторяющуюся запись из списка (он работает для всех ОС, кроме Android 8.0).

 String Name=stationlist.get(position).getStation_name();
    if (Name.equals("Old High Court Interchange")){
        System.out.println("Search station name : "+ flag);

        if (flag==true){
            holder.mainll.setVisibility(View.GONE);//mainll is LinearLayout
            flag = false;
        }

    }
    else {
        holder.mainll.setVisibility(View.VISIBLE);
        flag = true;
    }

есть ли решение?

Dharmesh Patel 23.05.2018 06:34
0
1
31
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я решил свою проблему. Это код, который я добавил в свой метод FilterResults класса valueFilter (расширяется с помощью Filter).

if (filterList.get(i).getStation_name().toLowerCase().contains(constraint))
            {
                //ADD PLAYER TO FILTERED PLAYERS
               // filteredPlayers.add(filterList.get(i));Dharmesh


                if (filterList.get(i).getStation_name().equals("Old High Court Interchange")){

                    if (flagSearch==true){
                        //.mainll.setVisibility(View.GONE);
                        filteredPlayers.add(filterList.get(i));
                        flagSearch = false;
                    }else{

                    }

                }else {
                    filteredPlayers.add(filterList.get(i));
                    //flag = true;
                }
            }

Другие вопросы по теме