1

(我继承了一个 Flex/AIR 项目,自从我使用 Flex 以来已经有一段时间了,如果这是一个基本问题,请原谅我)

我有一个 Flex/AIR 项目,它加载图像文件名的目录并将它们呈现在 Tree 组件中。然后用户可以单击文件名来显示图像。

我很难理解为什么 Flex Tree 组件视图中的排序(文件名的顺序)与(OSX)目录视图不同。OSX 正在做聪明的事情,并对数字和 alpha 值进行排序。Flex Tree 并没有那么聪明……正如下面的屏幕截图所示。

我一直在寻找 spark Sort 和 SortField 集合,但尚不清楚如何使用它们。是否有一个简单的解决方案来进行我需要的那种排序:告诉 Flex 考虑文件名的数字部分的方法?

更新:

猜猜我正在猎杀蛇……称为“自然排序”(sorting-for-humans-natural-sort-order)……

在此处输入图像描述 在此处输入图像描述

4

1 回答 1

0

as3-commons-lang 项目中已经存在“自然”排序的功能。在StringUtils类中,查找naturalCompare()函数。

现在剩下要做的就是将其应用于层次结构中的所有集合。您必须递归遍历树中的所有节点,并对每个节点的children.

于 2012-10-04T09:47:16.713 回答