我想显示一个名为listaBaresFiltrada的列表,该列表按多个值排序。
Evento模型:
import 'package:flutter/material.dart';
class Evento {
final String eventoId;
final String fechaEvento;
final String tituloEvento;
final String evento;
final bool es_privado;
final bool es_publico;
final String num_invitados;
final String ubicacionEvento;
final String latitudEvento;
final String longitudEvento;
final String descripcionEvento;
final String imagenEvento;
final String autorEvento;
final String fotoPerfilAutor;
final String interes;
double distancia;
bool menosde30km;
bool espasado;首先,我想对以下价值进行排序:
就目前而言,我能够做出第一次排序条件,如下所示:
//sorting the list
listaBaresFiltrada.sort((a,b) =>
DateFormat('d-M-yyyy HH:mm', 'de_DE').parse(a.fechaEvento).compareTo(
DateFormat('d-M-yyyy HH:mm', 'de_DE').parse(b.fechaEvento)));但我不知道如何把其他两种分类条件都包括进去。
发布于 2021-08-27 12:32:06
由于您不能在3种不同条件下对列表进行排序,所以我假设您希望有3种不同的列表。为此,你必须:
List sortOne = listaBaresFiltrada.sort((a,b) =>
if(a) return 1;
else return -1
);
List sortTwo = listaBaresFiltrada.sort((a,b) =>
DateFormat('d-M-yyyy HH:mm', 'de_DE').parse(a.fechaEvento).compareTo(DateFormat('d-M-yyyy HH:mm', 'de_DE').parse(b.fechaEvento))
);
List sortThree = listaBaresFiltrada.sort((a,b) =>
a.distancia.compareTo(b.distancia)
);https://stackoverflow.com/questions/68953410
复制相似问题