Jetzt habe ich eine Textansicht, und ich erhalte Inhaltsnachricht, ich werde tun NSString * speakText = [[NSString Alloc] initWithFormat: @ "% @ \ n% @ \ n% @ ", vonWho, content, _cheatView.text]; um es zu zeigen. Aber jetzt möchte ich ein Array erstellen, alle Nachrichten speichern, In einem Array wieIch möchte ein ChatLog erstellen, aber ich weiß nicht, wie es geht
Probe> [0] (first message 3pair key/value)
>[0]
>[1]
>[2]
>[1] (second message 3pair key/value)
>[2]
>[x]
>[y]
habe ich versucht, den Einsatz
- (void)webSocket:(SRWebSocket *)webSocket didReceiveMessage: (id)message;
{
NSString *toMessageJson = [[NSString alloc]initWithString:message];
[toMessageJson dataUsingEncoding:NSUTF8StringEncoding];
NSData *toMessageData =[toMessageJson dataUsingEncoding:NSUTF8StringEncoding];
NSError *error = nil;
NSDictionary *messageDic = [NSJSONSerialization JSONObjectWithData:toMessageData options:NSJSONReadingAllowFragments error:&error];
NSMutableArray *logDic =[NSMutableArray alloc];
[messageDic enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL * stop) {
if ([key isEqualToString:@"content"]) {
[logDic addObject:messageDic];
}
}];
Aber die logArray immer nur 1 Objekt haben.
Können Sie zeigen, wo und wie Sie füllen Nachricht und logArray. Geben Sie nur, wie Sie Nachricht an LogArray hinzufügen, scheint unvollständig zu sein, da es nicht vollständig zeigt, was das Problem verursachen kann, nur 1 Objekt im Array zu haben. – Joshua
ist (ID) Nachricht immer ein Wörterbuch? Ich nehme an, Nachricht wird immer eine einzelne Nachricht sein? und jedes Mal, wenn Sie eine neue Nachricht erhalten, wird diese Methode aufgerufen, bin ich richtig? – Joshua
@Joshua (id) Nachricht ist JSON, es ist eine einzelne Nachricht! Wenn der Server die Nachricht erhält, wird er angerufen! –