[問題] 排序修改NSMutableArray單一key值
假設今天宣告
NSMutableArray * arrayA2;
NSDictionary *data;
data = @{@"No.": [NSString stringWithFormat:@"%d", 3],
@"Name": [NSString stringWithFormat:@"妙蛙種子"],};
data = @{@"No.": [NSString stringWithFormat:@"%d", 1],
@"Name": [NSString stringWithFormat:@"妙蛙花"],};
[arrayA2 addObject:data];
NSLog 去看 arrayA2的內容是
{
No = "3"
name = "妙蛙種子"
}
{
No = "1"
name = "妙蛙花"
}
請問該怎麼做才能只改key"No"的值,不改"Name",讓"No"的值可以依序或倒序排列
例如
{
No = "1"
name = "妙蛙種子"
}
{
No = "3"
name = "妙蛙花"
}
謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.248.134.2
※ 文章網址: https://www.ptt.cc/bbs/MacDev/M.1461643159.A.817.html
※ 編輯: aureolus (61.228.67.125), 04/26/2016 12:39:15
→
04/26 12:56, , 1F
04/26 12:56, 1F
→
04/26 12:59, , 2F
04/26 12:59, 2F
→
04/26 12:59, , 3F
04/26 12:59, 3F
你好,非常謝謝建議!
會這樣做是因為我Array顯示在TableView當中,且我有寫能夠Drag Drop的功能
但是拖拉項目後編號不會跟著改變,所以想請問有沒有方法能夠修正,謝謝!
※ 編輯: aureolus (60.248.134.2), 04/26/2016 13:06:49
推
04/26 13:07, , 4F
04/26 13:07, 4F
→
04/26 13:07, , 5F
04/26 13:07, 5F
謝謝回應,因為只要是顯示在NSTableView中,要有拖拉功能
但是拖拉後項目編號不會跟著更新
※ 編輯: aureolus (60.248.134.2), 04/26/2016 13:11:57
→
04/26 21:56, , 6F
04/26 21:56, 6F
謝謝各位幫忙,雖然這個問題很困難不過自己找到另一種方法了
for(int i =0 ; i <arrayA2.count ; i++)
{
NSDictionary *item =[arrayA2 objectAtIndex:i];
NSMutableDictionary *mutableItem = [NSMutableDictionary dictionaryWithDictionary:item];
[mutableItem setObject: [NSNumber numberWithInteger: i+1] forKey:@"No"];
[arrayA2 setObject: mutableItem atIndexedSubscript:i];
}
這樣做之後成功重新依序寫入所有NSMutableArray的值,但不是用排序的方式
不過已達成我原先的目的,謝謝大家幫忙
※ 編輯: aureolus (60.248.134.2), 04/27/2016 10:04:38
MacDev 近期熱門文章
PTT數位生活區 即時熱門文章