2011-07-15 30 views
0

我有10個按鈕,點擊按鈕會增加一些數值。我想把值放到NSMutableArray中。但我不希望添加其取決於按鈕索引值,我想的值時在隨機點擊任何按鈕添加到陣列中作爲相同的順序(0至ArrayCount)。如何使用iPhone中的按鈕標籤將值存儲到NSMutableArray中?

對於例如:

 switch (btn.tag) { 
         case 0: 
          itemValue = itemValue + 15;   //item value is 30 
          [amountArray addObject:itemValue];   
          break; 

         case 1: 
          itemValue = itemValue + 30;   //item value is 60 
          [amountArray addObject:itemValue];   
          break; 

         case 2: 
          itemValue = itemValue + 25;   //item value is 50 
          [amountArray addObject:itemValue];   
          break; 

         case 3: 
          itemValue = itemValue + 40;   //item value is 80 
          [amountArray addObject:itemValue];   
          break; 

         case 4:      //item value is 45 
          itemValue = itemValue + 15; 
          [amountArray addObject:itemValue];   
          break; 

在這種情況下,我已經點擊了按鈕,在按鈕的索引4,3,2,1,0的順序和期望的結果陣列是

     {45,80,50,60,30}. 

如果我用這樣的事情,

  [amountArray replaceObjectAtIndex:btn.tag withObject:itemValue]; 

,結果是{} 30,60,50,80,45。

但我想的值作爲通常的存儲陣列如0至arrayCount英寸當每一次點擊該按鈕,它會增加一些價值,所以不應該讓重複值,必須改變只值。

謝謝!

+0

我真的不明白你的英語。你能否繼續糾正你的問題,在這一點上很難知道你想要什麼。 – Cyprian

回答

0

你加入一個int數組這是錯誤的,你需要使用

[amountArray addObject:[NSNumber numberWithInt:itemValue]]; 

你也需要檢查,如果該值是在陣列提供已經使用陣列的方法

if([array indexOfObject:[NSNumber numberWithInt:itemValue]] == NSNotFound) { 
    //Add object here to mutable array 
} 

或以後,您需要使用sortDescripter或NSPredicate對數組進行排序。

1

的NSMutableSet將避免dublicate。

因此,而不是使用數組只是使用的NSMutableSet。

 NSMutableSet *amountSet=[[NSMutableSet alloc]init]; 

     [amountSet addObject:itemValue]; 
相關問題