2009-11-25 47 views
0

有无论如何我可以通过UIImageView的frame.origin.y值对包含UIImageView的NSMutableArray进行排序吗?目标C - 按属性排序

尝试在添加视图之前进行排序以确保堆叠顺序正确。

谢谢 三通

回答

6

你可以提供一个比较选择:

NSInteger intSort(id num1, id num2, void* context) 
{ 
    int v1 = [num1 intValue]; 
    int v2 = [num2 intValue]; 
    if (v1 < v2) 
     return NSOrderedAscending; 
    else if (v1 > v2) 
     return NSOrderedDescending; 
    else 
     return NSOrderedSame; 
} 

这种方法比较NSNumber的对象。
你需要改变它来改变你的视图控制器坐标。

要设置该比较选择器:

NSArray* sortedArray; 
sortedArray = [anArray sortedArrayUsingFunction:intSort context:NULL]; 

这是从Apple documentation一个例子。


Here是一个类似的(但用于字母排序)问题。

+0

谢谢,这使我得到正确的答案。 – teepusink 2009-12-07 08:03:12