Frage

Dies ist wahrscheinlich eine einfache Sache zu tun, aber ich kann es einfach nicht herausfinden - wie ich am Ende athe Textview zu bearbeiten? wie kann ich die Tastatur zu verschwinden bekommen? oder muss ich außerhalb klicken, um es weggehen?

War es hilfreich?

Lösung

Als erstes wird eine (um ehrlich zu sein) ziemlich einfache Frage wie diese macht mich fragen, ob Sie in die Dokumentation versucht haben, lesen oder im Internet zu suchen.

Die Suche nach "Apple-Dokumentation UITextView" gibt Ihnen Link der Klasse Dokumentation. In ähnlicher Weise hier die Dokumentation für die UITextViewDelegate.

Die Suche nach "UITextView einfachem Beispiel" gibt Ihnen dieses nützliches Beispiel .

Die Suche nach "UITextView entlassen Tastatur", der erste Hit scheint Ihre Frage beantworten genau . (Obwohl er entlässt die Tastatur auf einer Return-Taste, die möglicherweise nicht, was Sie wollen.) (Bearbeiten -. Es scheint, aus dem zweiten Kommentar, es ist genau das, was Sie wollen)

P. S. Die Leute oben sind richtig, wenn auch ein wenig kurz und bündig (verständlicherweise). Sie benötigen einen UITextViewDelegate zu implementieren. In diesem Delegate, wenn Sie die Tastatur auf einem Return-Taste ausblenden möchten, implementieren shouldChangeTextInRange, suchen Sie nach einem @ „\ n“ und Ersthelfer zurücktreten, wenn Sie es. Alternativ fügen Sie ein „Bearbeiten“, um die Benutzeroberfläche und Ersthelfer zurücktreten, wenn der Benutzer sie drückt.

Andere Tipps

Sehr einfach:

[myTextField resignFirstResponder]; 

wird den Trick tun.

Eine Möglichkeit, die Bearbeitung zu beenden, außerhalb des Textview tippt, ist nicht ganz trivial. Auswählen andere Textansichten oder Textfeldern oder eine Navigationssteuerung zu aktivieren auslösen ...

- (void)textViewDidEndEditing:(UITextView *)textView

... auf, was Objekt, das Sie haben, wie die Textview-Delegierter bezeichnet. Sie können dies selbst auslösen, indem Sie anrufen ...

- (BOOL)endEditing:(BOOL)force

... auf der Ansicht, dass Ihr Textfeld enthält.

Angenommen, ich habe eine UITextView in einem UITableViewCell (innerhalb eines uitable). Ich mag die Bearbeitung ermöglichen, durch Antippen der Tabelle zu beenden. Ich kann dies tun:

- (void)viewDidLoad
{
    [super viewDidLoad];

    UITapGestureRecognizer *tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(didTapTable)];
    [[self tableView] addGestureRecognizer:tapRecognizer];
    [tapRecognizer release];
}

- (void)didTapTable
{
    [[self tableView] endEditing:YES];
}

Nun, wenn ich meinen Tisch klopfen, beende ich die Bearbeitung. Und, wie andere gesagt haben, in textViewDidEndEditing sollte ich sicher sein, [textView resignFirstResponder]; anrufen

[yourTextField resignFirstResponder];

wird die Tastatur verschwinden und bearbeiten Ende machen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top