Сортировать по дате в мире - PullRequest
0 голосов
/ 03 октября 2019

Я бы хотел отсортировать информацию по дате. Например, формат данных: 10 ноября 2017 года. Я пытаюсь что-то вроде этого:

RealmResults<ResultFavorite> resultFavoritesReleaseDate = realm.where(ResultFavorite.class).sort("releaseDate", Sort.DESCENDING).findAll();

Но это не работает. FieldName в запросе является строкой.

1 Ответ

1 голос
/ 04 октября 2019

Когда вы говорите «это не работает», я предполагаю, что на самом деле записи отсортированы , но в порядке убывания строк, а не в порядке дат.

ТамВот два варианта, которые я вижу.

Во-первых, Date - это поддерживаемый тип поля Realm, так что вы можете изменить свое поле на этот тип (или необязательно: Date?, если используете Kotlin). Ваш запрос должен работать. Это было бы предпочтительным решением.

Второй вариант гораздо менее элегантен, но будет необходим, если вы не можете изменить тип поля. В этом случае вам потребуется запросить все объекты, а затем сопоставить тип результата с массивом и отсортировать с помощью процедуры сортировки java или Kotlin. Критерием сортировки будет преобразование строки в дату. Это слишком медленно и неэффективно с точки зрения использования памяти.

...