Objective-C

Senden einer Nachricht

Im vorherigen Schritt haben Sie etwas über Unterhaltungen und Ereignisse gelernt. Das Senden einer Nachricht erzeugt ein neues Ereignis und sendet es über die Unterhaltung.

Um eine Nachricht zu senden, fügen Sie die folgende Funktion zu ChatViewController.m Klasse:

@implementation ViewController
    ...

- (void)sendMessage:(NSString *)message {
    [self.inputField setUserInteractionEnabled:NO];
    [self.conversation sendMessage: [[NXMMessage alloc] initWithText:message] completionHandler:^(NSError * _Nullable error) {
        dispatch_async(dispatch_get_main_queue(), ^{
            [self.inputField setUserInteractionEnabled:YES];
        });
    }];
}

Um den Text aus der Datei inputField müssen Sie eine weitere Funktion hinzufügen, die von der UITextFieldDelegate:

@implementation ViewController
    ...

- (BOOL)textFieldShouldReturn:(UITextField *)textField {
    NSString *text = self.inputField.text;
    
    if (text) {
        [self sendMessage:text];
    }
    self.inputField.text = @"";
    [self.inputField resignFirstResponder];
    return YES;
}

Diese Delegatenfunktion wird aufgerufen, wenn die Eingabetaste auf der Tastatur gedrückt wird.

Bauen und Ausführen

Cmd + R zu erstellen und erneut auszuführen. Sie haben jetzt eine funktionierende Chat-App! Um gleichzeitig zu chatten, können Sie die App auf zwei verschiedenen Simulatoren/Geräten laufen lassen:

Sent messages