Flutter 颤振列表视图按字母顺序排序

Flutter 颤振列表视图按字母顺序排序,flutter,Flutter,我想做的似乎很容易,但我不知道怎么做。数据通过我的listview中的API传输。我要做的是按字母顺序对listview中的数据进行排序 简单地说,我想在listview中按字母顺序对来自API的数据进行排序 这是我获取数据的方式: Future getWord()异步{ var响应= 等待http.get(Uri.parse('myapirl'); var_words=List(); _words=(json.decode(utf8.decode(response.bodyBytes))作为

我想做的似乎很容易,但我不知道怎么做。数据通过我的listview中的API传输。我要做的是按字母顺序对listview中的数据进行排序

简单地说,我想在listview中按字母顺序对来自API的数据进行排序

这是我获取数据的方式:

Future getWord()异步{
var响应=
等待http.get(Uri.parse('myapirl');
var_words=List();
_words=(json.decode(utf8.decode(response.bodyBytes))作为列表)
.map((singleWordMap)=>Word.fromJson(singleWordMap))
.toList();
返回单词;

}
因为它是一个列表,所以您可以使用
sort()
函数

只需在生成器中使用列表之前对其进行排序即可


\u words用于显示.sort((a,b)=>a.word.compareTo(b.word))

因为它是一个列表,所以您可以使用
sort()
函数

只需在生成器中使用列表之前对其进行排序即可


\u words用于显示.sort((a,b)=>a.word.compareTo(b.word))

我正在使用手机,因此目前无法完全编写或测试代码

最快的方法是在onState方法中通过传递可比较的 然后

\u words.sort((a,b)=>a.word.compareTo(word))
在我看来,如果您需要在其他地方对列表进行排序,最干净的方法是只实现一次comparator:

  • 使Word类实现具有可比性
  • 重写compareTo方法
  • 在您的起始方法中对列表进行排序
  • 类字工具{
    ...
    @凌驾
    int compareTo(Word-other)=>this.Word.compareTo(other.Word);
    
    然后

    setState(
    () {
    _words.addAll(值);
    _words.sort();
    _wordsForDisplay=\u单词;
    },
    );
    
    我正在使用手机,因此目前无法完全编写或测试代码

    最快的方法是在onState方法中通过传递可比较的 然后

    \u words.sort((a,b)=>a.word.compareTo(word))
    
    在我看来,如果您需要在其他地方对列表进行排序,最干净的方法是只实现一次comparator:

  • 使Word类实现具有可比性
  • 重写compareTo方法
  • 在您的起始方法中对列表进行排序
  • 类字工具{
    ...
    @凌驾
    int compareTo(Word-other)=>this.Word.compareTo(other.Word);
    
    然后

    setState(
    () {
    _words.addAll(值);
    _words.sort();
    _wordsForDisplay=\u单词;
    },
    );
    
    我更新了我的问题。我添加了单词model.ya,现在更容易回答我的问题。我添加了单词model.ya,现在更容易回答是的,这正是我想做的,非常感谢。是的,这正是我想做的,非常感谢。