2010-03-16 8 views
5

Ich bin ein Neuling. Ich kann nicht herausfinden, wie und wo ResignFirstResponder aufgerufen wird, um die Tastatur loszuwerden, wenn der Benutzer die Eingabe des Textes in einem UITextField beendet hat. Ich bin etwas verwirrt von der UIResponder-Klasse. Die Monodokumentation besagt: "Um die Tastatur zu schließen, senden Sie die Nachricht UIResponder.ResignFirstResponder an das Textfeld, das derzeit der Erstbeantworter ist." Wie geht das? Kann jemand ein einfaches Arbeitsbeispiel posten? Es gibt viele Beispiele in Obj-C, aber keine in C#. Danke vielmals.Beispiel für UITextField ResignFirstResponder mit Monotouch

Antwort

17

Hier an example I've done recently:

private UITextField _textField; 

public override void ViewDidLoad() 
{ 
    _textField = new UITextField(); 
    _textField.Text = "King Alfonso III"; 
    _textField.Bounds = bounds; 
    _textField.Placeholder = "Username"; 
    _textField.ShouldReturn = delegate 
    { 
     _textField.ResignFirstResponder(); 
     return true; 
    }; 
    View.AddSubview(_textField); 
} 

Auch wenn Sie ein Formular mit einer Schaltfläche abgegeben, stellen Sie sicher, dass Sie alle Textfelder in der Schaltfläche klicken zurücktreten, um zu verhindern Responder Fehler bekommen.

public void ButtonClick(object sender, EventArgs e) 
{ 
    _textField.ResignFirstResponder(); 
    // All other textboxes 

    // Other button logic 
} 
+1

Top Kumpel! Ich fühle mich ganz nett :) Danke nochmal Chris! – Tajomaru

+0

@kentakhy Ich bin froh zu helfen, es dauerte ungefähr 3 Stunden, um es aus kleinen Bits im Web und Miguels Beispielen herauszufinden: http://github.com/migueldeicaa/monotouch-samples –

Verwandte Themen