Мне необходимо отфильтровать данные в зависимости от вводимых значений в EditText. Ниже код фильтра который уже написан но работает он не совсем корректно
Собственно InfectionModel
public class InfectionModel implements Serializable {
private String id;
private String content;
private String title;
private String prew;
private String date;
private String url_img;
}
И вот так у меня он хранится:
private ArrayList<InfectionModel> im = ArrayList<InfectionModel>
Написал свой фильтр
public Filter getFilter() {
return new Filter() {
@Override
protected void publishResults(CharSequence constraint, FilterResults results) {
if (results.count == 0) {
notifyDataSetInvalidated();
}else{
im = (ArrayList<InfectionModel>) results.values;
notifyDataSetChanged();
}
}
@Override
protected FilterResults performFiltering(CharSequence constraint) {
// TODO Auto-generated method stub
FilterResults results = new FilterResults();
if (constraint == null || constraint.length() == 0) {
results.values = im;
results.count = im.size();
}else{
ArrayList<InfectionModel> filter_items = new ArrayList<InfectionModel>();
for (InfectionModel item : im) {
if (item.getTitle().toLowerCase().startsWith(constraint.toString().toLowerCase())) {
filter_items.add(item);
}
}
results.values = filter_items ;
results.count = filter_items.size();
}
return results;
}
};
}
Вот только когда символы стираются - элементы перестают фильтроваться
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Яву учу первый месяц урывками, хочу разобратьсяЭто часть моего тестового задания чтобы поступить курсы по java
JFrame содержит две JPanelНеобходимо нарисовать овалы в левой панели, при чем то, что рисуется должно отображаться в правой панели
У меня есть задание нужно сделать метод который будет принимать значение и возвращать int