val ref = FirebaseDatabase.getInstance().getReference("/WorkTime/$link")
ref.orderByChild("order").addListenerForSingleValueEvent(object: ValueEventListener{
override fun onDataChange(p0: DataSnapshot) {
val adapter = GroupAdapter<GroupieViewHolder>()
p0.children.forEach {
Log.d("Vievactivity", it.toString())
var singlerow = it.getValue(CounterActivity.WorkTimeCountedClass::class.java)
if (singlerow != null ){
adapter.add(WorkTimeList(singlerow))
}
}
recycleViev_lista.adapter = adapter
Я нашел решение, может быть, просто написание первого вопроса здесь вдохновило меня:)
Поэтому, используя "orderByChild", я добавил сортировку, к сожалению, только увеличивая сортировку. Чтобы изменить это, мне пришла в голову мысль, что значение, после которого я хочу отсортировать, вычесть из 0 - это обратит метод сортировки:)
Я не умею объяснять, так что, например, может быть: время запуска Firebase в миллисекундах, например (1579097163159), (1578374795583), (1579152252463) - сортируя эти данные, мы получаем результат в увеличении
1 - (1578374795583)
2 - (1579097163159)
3 - (1579152252463)
К сожалению, я не нашел, как изменить вкладки orderByChaild так, что они сортируются в порядке убывания ...... мы можем вычесть из этих значений и получить ожидаемый эффект:
1 - (1578374795583) -> 0 - 1578374795583 = - 1578374795583
2 - (1579097163159) -> 0 - 1579097163159 = - 1579097163159
3 - (1579152252463) -> 0 - 1579152252463 = - 1579152252463
Нам нужно добавить переменную в Firebase, которая будет результатом затем эту операцию мы сортируем по результату этой операции, и она готова.
1 - 1579152252463
2 - 1579097163159
3 - 1578374795583
Я надеюсь, что помог кому-то столько, сколько не могу сосчитать, сколько раз я нашел здесь помощь. Привет