0

如果我将函数设置为升序排序,然后单击箭头进行排序,那么它可以工作。如果我再次单击箭头,它不会对列表进行降序排序。

private void configureSorts() {
    //Size Comparison
    ListHandler<Data> columnSortHandler = new ListHandler<Data>(list);
    columnSortHandler.setComparator(sizeColumn,
            new Comparator<Data>() {
        public int compare(Data d1, Data d2) {
            if (d1 == d2) {
                return 0;
            }
            if (d1 != null) {
                return (d2 != null) ? compareDataSize(d1,d2):1;
            }
            return -1;
        }
    });
    this.addColumnSortHandler(columnSortHandler);
}
private Integer compareDataSize(Data d1, Data d2){
    return d1.getFileSize() > d2.getFileSize() ? 0:1;
}
4

0 回答 0