Хорошо, поэтому у меня есть функция для поиска и фильтрации. Все работает нормально, за исключением этой одной строки в конце, где она обновляет список после фильтрации. Но я не могу сделать это, так как эта одна конкретная строка останавливает все элементы, отображаемые в представлении переработки. < /p>
Это код, и эта строка в конце вызывает ошибку: < /p>
private void filterBikes() {
String searchedText = searchViewLocation.getQuery().toString().toLowerCase();
String selectedCategory = spinnerFilterCategory.getSelectedItem().toString();
String selectedSortPrice = spinnerSortPrice.getSelectedItem().toString();
` List filteredList = bikeList.stream()
.filter(p -> TextUtils.isEmpty(searchedText) || p.getName().toLowerCase().contains(searchedText))
.filter(p -> selectedCategory.equals("All bikes") || p.getCategory().equals(selectedCategory))
.collect(Collectors.toList());
if (selectedSortPrice.equals("Sort by price: Low - High")) {
filteredList.sort((p1, p2) -> Double.compare(p1.getPriceHour(), p2.getPriceHour()));
} else if (selectedSortPrice.equals("Sort by price: High - Low")) {
filteredList.sort((p1, p2) -> Double.compare(p2.getPriceHour(), p1.getPriceHour()));
}
adapter.updateList(filteredList); // this line
}
< /code>
Я также создал метод обновления в адаптере, чтобы я не знаю, в чем проблема < /p>
public void updateList(List newList) {
bikeList = newList;
notifyDataSetChanged();
}
< /code>
Я попытался сделать журнал, и это просто в конечном итоге Sauing FiltreedList - 0. Размер велосипеда передается, как и количество предметов. Но как только я попробую искать или фильтрацию, это не сработает.>
Подробнее здесь: https://stackoverflow.com/questions/794 ... ajor-error