2012-05-08 17 views
1

存在已經很多要求一個NSMutableArray的排序仍然是無法找到我的problem.Kindly精確解後續問題:的NSMutableArray(字典)改組陣列

我有一個arrMasterArray這是這樣的:

//This is an array of dictionaries with each element having dictionary at its index and key-value for the same. 
    <__NSArrayM 0x8bbaca0>(
    { 
     "Brand_Description" = Accolate; 
     "Medication_DateStart" = "5/5/2012 12:00:00 AM"; 
    },{ 
     "Brand_Description" =Trisenox; 
     "Medication_DateStart" = "5/5/2012 12:00:00 AM"; 
    }, { 
     "Brand_Description" = Ultiva; 
     "Medication_DateStart" = "5/5/2012 12:00:00 AM"; 
    } ,{ 
     "Brand_Description" = Accretropin; 
     "Medication_DateStart" = "5/5/2012 12:00:00 AM"; 
    } 

我應用排序上arrMasterArray返回我一個排序的數組,但與特定的keyPath的唯一要素:

NSArray *arrNameCompare= [[arrMasterArray valueForKeyPath:@"Brand_Description"] sortedArrayUsingSelector:@selector(compare:)]; 

,其輸出是這樣的:

<__NSArrayI 0x10e0efb0>(
Accolate, 
Accretropin, 
Trisenox, 
Ultiva 
) 

現在我想arrMasterArray獲得根據**arrNameCompare**排序。

我搜索了很多,但沒有運氣。感謝您的耐心和對我的英語感到抱歉。 再次感謝。

+0

什麼HVü在'compare'選擇方法寫的嗎?它的代碼是imp coz它實際上執行排序 –

回答

1

我想你要找的是什麼的NSMutableArray方法,sortUsingDescriptors :.此方法將您的(可變)數組「排序」,而不是創建像sortedArrayUsingSelector:這樣的新數組。所以,如果我理解你想要做什麼,然後這些線路將根據Brand_Description的值進行排序arrMasterArray:

NSSortDescriptor *sorter = [NSSortDescriptor sortDescriptorWithKey:@"Brand_Description" ascending:YES]; 
[arrMasterArray sortUsingDescriptors:[NSArray arrayWithObject:sorter]]; 
+2

感謝@rdlemar它工作:) –