Răsfoiți Sursa

фильтрация списка

Евгений Колесников 4 ani în urmă
părinte
comite
afbb9e19ff
2 a modificat fișierele cu 18 adăugiri și 1 ștergeri
  1. 17 0
      articles/android_auth.md
  2. 1 1
      readme.md

+ 17 - 0
articles/android_auth.md

@@ -784,6 +784,23 @@ else
     }
     ```
 
+## Фильтрация данных
+
+В нормальных АПИ должна быть предусмотрена фильтрация набора данных на сервере, то есть вам придут только те данные, которые нужны. Но на моём сервере АПИ простенькое (зато универсальное), оно просто отдаёт ту таблицу в базе, которую вы запросите (нам это не страшно, так как таблицы у нас коротенькие). 
+
+Из-за этого возникает необходимость отфильтровать отображаемые данные.
+
+Делается это элементарно - создаётся ещё один список соотвествующего типа. Причём основной список имеет смысл вынести в класс приложения (MyApp) и заполнять только при первом обращении к нему (size==0).
+
+А нужный на текущем окне список (например, материалов входящих в состав конкретной продукции) заполняем из общего списка:
+
+```kt
+filteredMaterialList.clear()
+for(i in 0 until app.materialList.size)
+    if(app.materialList[i].id==<тут ID интересующего вас продукта>)
+        filteredMaterialList.add(app.materialList[i])
+```
+
 # Задание
 
 * на первый экран добавить заставку (splash-screen) с таймером на пару секунд, только потом показывать диалог для ввода логина/пароля

+ 1 - 1
readme.md

@@ -149,7 +149,7 @@ http://sergeyteplyakov.blogspot.com/2014/01/microsoft-fakes-state-verification.h
 - сохранение данных при повороте (попов вт)
 - локальное хранилище (малинин ср)
 - чтение/запись файлов (галерея) (смирнов чт)
-swype???
+- swype вниз (обновление списка)
 
 чат
 tablayout