2011-11-26 11 views
5

संभव डुप्लिकेट:
How to display an array in reverse order in objective Cएनएसएमयूटेबलएरे में डेटा को कैसे उलटें?

मैं एक NSMutableArray है और इस सरणी UITableView में अच्छी तरह से जानकारी है। लेकिन मैं नवीनतम जानकारी UITableView में प्रदर्शित करना चाहता हूं। अभी सबसे पुरानी जानकारी पहले UITableView में आती है।

NSMutableArray *entries = [NSMutableArray array]; 
[self parseFeed:doc.rootElement entries:entries]; 
for (RSSEntry *entry in entries) { 
    [allEntries insertObject:entry atIndex:0]; //insertIdx]; 
    [self.tableView insertRowsAtIndexPaths:[NSArray arrayWithObject:[NSIndexPath indexPathForRow:0 inSection:0]] withRowAnimation:UITableViewRowAnimationRight]; 
} 

तो मैं NSMutableArray में जानकारी कैसे रिवर्स कर सकते हैं: मेरी कोड इस प्रकार है?

उत्तर

13

रिवर्स ऑर्डर में entries की सामग्री का अनुमान लगाने के बारे में कैसे?

for (RSSEntry *entry in [entries reverseObjectEnumerator]) { 
    ... 
} 

तुम सिर्फ एक सरणी लेने के लिए और एक उलट सरणी का निर्माण करना चाहते हैं, तो आप ऐसा कर सकते हैं:

NSArray *reversedEntries = [[entries reverseObjectEnumerator] allObjects]; 
+1

बेशक आप अगर वास्तव में मूल से उलट एक सरणी की आवश्यकता है, उल्टा उल्टा करते हुए बस एक दूसरा mutable सरणी भरें। – NJones

+0

thanx दोस्त यह ठीक काम करता है – iPhone

7

आप इस तरह की तरह की कोशिश कर सकते हैं:

for (int k = [originalArray count] - 1; k >= 0; k--) { 
    [reverseArray addObject:[originalArray objectAtIndex:k]]; 
} 
+0

केवल समाधान मैंने पाया कि nsmutablearray के लिए काम करता है। धन्यवाद! – denikov

संबंधित मुद्दे