중첩 된 구조 내에서 개체를 업데이트하는 데 문제가 있습니다. 나는 여러 nsmutableDictionaries를 포함하고 다른 경우에는 이전 수준에 그 각각에 대해 nsmutableDictionaries의 추가 수준이있는중첩 된 NSMutableDictionary 업데이트 문제 - 잘못된 키 업데이트
NSMutableDictionary
있습니다.
다음은 변경할 수있는 유형이므로 setObject : ForKey :로 간단히 가정합니다. 어떤 이유로 구조체가 중첩 된 경우 하나의 내부 수준 사전을 업데이트하려고 시도하면이 수준의 모든 사전 형 사전에 대한 모든 개체 값이 무시됩니다.
값을 구문 분석하고 키를 다시 제거하려고 시도했지만 여러 가지를 시도했지만 아무 것도 작동하지 않는 것 같습니다.
도움을 주시면 감사하겠습니다.
여기 내 코드입니다 : 데모를위한 몇 가지 인덱스가있는 텍스트 필드와 segmentedControl 설정이 있고 둘 중 선택되어있는 것은 개체를 저장/업데이트하는 데 사용하는 인덱스입니다. 키에 NSNumber를 사용하고 있습니다.
업데이트 :
//viewDidLoad
self.content = [NSMutableDictionary new];
self.contentContainer = [NSMutableDictionary new];
- (IBAction)like_unlike:(id)sender {
BOOL isLiked = [self.textField.text boolValue];
NSLog(@"isLiked - %d", isLiked ? YES : NO);
NSNumber *nsIsLiked = [NSNumber numberWithBool:isLiked];
NSLog(@"nsIsLiked - %@", nsIsLiked);
[self.content setObject:nsIsLiked forKey:@"updatedIsLiked"];
[self.contentContainer setObject:self.content forKey:[NSNumber numberWithInteger:self.segment.selectedSegmentIndex]];
}
NSLog(@"COMPLETE DIC - %@", self.contentContainer);
}
이 출력입니다. 나는 3 개의 값을 저장한다. 그런 다음 false로 인덱스 0을 업데이트시 인덱스 0, 2, 4
2014-11-08 11:45:41.855 DictionariesNested[1039:125297] isLiked - 1
2014-11-08 11:45:41.855 DictionariesNested[1039:125297] nsIsLiked - 1
2014-11-08 11:45:41.855 DictionariesNested[1039:125297] COMPLETE DIC - {
0 = {
updatedIsLiked = 1;
};
}
2014-11-08 11:45:43.623 DictionariesNested[1039:125297] isLiked - 1
2014-11-08 11:45:43.623 DictionariesNested[1039:125297] nsIsLiked - 1
2014-11-08 11:45:43.623 DictionariesNested[1039:125297] COMPLETE DIC - {
0 = {
updatedIsLiked = 1;
};
2 = {
updatedIsLiked = 1;
};
}
2014-11-08 11:45:45.018 DictionariesNested[1039:125297] isLiked - 1
2014-11-08 11:45:45.018 DictionariesNested[1039:125297] nsIsLiked - 1
2014-11-08 11:45:45.018 DictionariesNested[1039:125297] COMPLETE DIC - {
0 = {
updatedIsLiked = 1;
};
4 = {
updatedIsLiked = 1;
};
2 = {
updatedIsLiked = 1;
};
}
은, 모든 값은 0
2014-11-08 11:48:01.161 DictionariesNested[1188:161731] isLiked - 0
2014-11-08 11:48:01.161 DictionariesNested[1188:161731] nsIsLiked - 0
2014-11-08 11:48:01.162 DictionariesNested[1188:161731] COMPLETE DIC - {
0 = {
updatedIsLiked = 0;
};
4 = {
updatedIsLiked = 0;
};
2 = {
updatedIsLiked = 0;
};
}
누구든지 의견이 있으십니까? – SprayKid982