2013-10-16 69 views
0

我試圖構建一個函數,它將檢查檢索到的JSON值是否已更改(給定對話中的messagecount)。我正在用我的JSON數據填充一個TableView,並且我希望將該值存儲在字典中,並在稍後進行數據更新時進行比較。從TableView行添加值到NSMutableDictionary行

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
ConversationsModel* conversation = _feed.conversations[indexPath.row]; 
static NSString *identifier = @"ConversationCell"; 
UITableViewCell *cell = [_tableView dequeueReusableCellWithIdentifier:identifier forIndexPath:indexPath]; 
if (cell == nil){ 
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault 
             reuseIdentifier:identifier]; 
} 
[self getMessageCountToDictionary:conversation.messagecount id:conversation.conversationid]; 
cell.textLabel.text = conversation.title; 
return cell; 
} 

而且我的方法來存儲在一個的NSMutableDictionary值:

- (void)getMessageCountToDictionary:(NSNumber*)messagecount id:(NSString *)conversationid 
{ 
NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] init]; 
if (conversationid != NULL) {  
[dictionary setValue:conversationid forKey:[NSString stringWithFormat:@"%@", conversationid]]; 
[dictionary setValue:messagecount forKey:@"messageCount"]; 
dictionaryCopy = [dictionary mutableCopy]; 
} 
NSLog(@"Stored in dictionary %lu", (unsigned long)dictionary.count); 
} 

NSLog回報2

好了,我不知道如果我在正確的軌道上這裏的目的我打算這樣做。所有的投入都非常感謝。

回答

1

我會建議使用鍵值觀察者來觀察你的對象改變值。指着我這個方向

https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/KeyValueObserving/KeyValueObserving.html

+0

THX格熱戈日:

你可以閱讀更多關於它在這裏。我一直在閱讀KVO,但在這種情況下我可以使用它來使用它。例如,我可以用這種方式添加觀察者嗎? '[[messageCountsDic objectForKey:[NSString stringWithFormat:@「%@ - Key」,conversationid]] addObserver:self forKeyPath:@「messagecount」options:(NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld)context:nil];'? – Thomas