2009-11-25 10 views
0

Y at-il de toute façon je peux trier une NSMutableArray qui contient UIImageView par la valeur de frame.origin.y UIImageView?Objectif C - Tri par propriété

Essayer de faire le tri avant d'ajouter la vue de vous assurer que l'ordre d'empilement est correcte.

Merci, T

Répondre

6

Vous pouvez fournir un sélecteur comparer:

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; 
} 

Cette méthode compare les objets NSNumber.
Vous devrez changer pour modifier l'affichage des coordonnées du contrôleur.

Pour définir ce sélecteur comparer:

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

Voici un exemple de la Apple documentation.


Here est une question similaire (mais pour le tri alphabétique).

+0

Merci, cela me conduit à la bonne réponse. – teepusink