0

次のようなプロパティクラスオブジェクトを含む配列があります

for (int i=0; i<[eventList count]; i++) {

    NSDictionary *EventListDic=[eventList objectAtIndex:i];

    eventData.eventID=[EventListDic objectForKey:@"event_id"];
    eventData.eventsname=[EventListDic objectForKey:@"title"];

    [self.arrEventDataList addObject:eventData];
    [eventData release];

}

eventData.eventsnameこのキーの配列をアルファベット順にソートしたいと思います。以下の機能を試してみましたが、うまくいきません。これを行う方法を教えてください。前もって感謝します

 NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"title" ascending:NO];
 NSArray *orderedArray = [self.arrEventDataList sortedArrayUsingDescriptors:[NSArray arrayWithObject:sortDescriptor]];

eventsname でソートされた arrEventDataList をソートしたい。

4

2 に答える 2

1

これを試して。

NSSortDescriptor *sortByName = [NSSortDescriptor sortDescriptorWithKey:@"eventsname"
                                                                 ascending:YES];
NSArray *sortDescriptors = [NSArray arrayWithObject:sortByName];
NSArray *sortedArray = [arrEventDataList sortedArrayUsingDescriptors:sortDescriptors];

ソートされた値が得られます。これにより、arrEventDataList.

于 2013-06-11T10:52:59.163 に答える
0

これを試してみてください...

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"self" ascending:YES];
NSArray *sortedFloats = [eventData.eventsname sortedArrayUsingDescriptors:
                    [NSArray arrayWithObject:sortDescriptor]];
[sortDescriptor release];

// Put the two arrays into a dictionary as keys and values
NSDictionary *dictID = [NSDictionary dictionaryWithObjects:eventData.eventID  forKeys:eventData.eventsname];

// Sort the second array based on the sorted first array
sortedID = [dictID objectsForKeys:sortedFloats notFoundMarker:[NSNull null]];
于 2013-06-11T11:18:40.203 に答える