Iphone 按字母顺序对NSArray排序,但应首先使用本地语言,然后是所有其他语言

Iphone 按字母顺序对NSArray排序,但应首先使用本地语言,然后是所有其他语言,iphone,objective-c,ios,nsarray,sorting,Iphone,Objective C,Ios,Nsarray,Sorting,我需要根据下一个规则对数组进行排序:首先使用本地字母(德语、法语或其他一些-当前用户界面)进行排序,然后使用英语排序,最后使用第#节中的所有其他符号。 我尝试使用sortedarrayingselector:@selector(localizedCaseInsensitiveCompare:)方法来实现这一点,但它们没有帮助(先对英语进行排序,然后对本地字符串进行排序)。如何做到这一点?我不确定任何标准比较器都能满足您的要求,但您可以自己编写 (如果您不想在NSString上创建一个类别来实现您

我需要根据下一个规则对数组进行排序:首先使用本地字母(德语、法语或其他一些-当前用户界面)进行排序,然后使用英语排序,最后使用第#节中的所有其他符号。
我尝试使用
sortedarrayingselector:@selector(localizedCaseInsensitiveCompare:)
方法来实现这一点,但它们没有帮助(先对英语进行排序,然后对本地字符串进行排序)。如何做到这一点?

我不确定任何标准比较器都能满足您的要求,但您可以自己编写


(如果您不想在
NSString
上创建一个类别来实现您自己的比较选择器,您可以始终使用
-[NSArray sortedarrayingcomparator:
来传递一个块。)

除非您将其存储在某个地方,否则确定语言将是一件棘手的事情……使用不同字符集的语言是可能的,但使用相同字符集的语言将需要字典或外部设置的语言标识符。