2014-12-13 20 views
10

Mit Swift, wie bekomme ich die Eingabe von einem UITextField?Eingang von UITextField vom Storyboard zur Swift-View-Controller-Datei

In meinem Main.storyboard habe ich ein "Textfeld" aus den vorgefertigten Komponenten ausgewählt und auf mein Storyboard gezogen.

Wie kann ich auf seinen Wert in meinem ViewController.swift zugreifen?

Was ich zur Zeit mache:

I ctrl + ziehen Sie das Textfeld in meine ViewController.swift Datei. Dann wähle ich in der Popup-Box "outlet" und nenne es "myInput".

Dann in einer anderen Funktion, ich greife auf seinen Wert mit self.myInput.text.

Ist dies der einzige Weg, um auf seinen Eingang zuzugreifen? Folgt mein Ansatz den Swift-Konventionen?

+0

Ja oder nur myInput.text – Ian

+1

Was ist der Unterschied zwischen der Verwendung von self.myInput.text und myInput.text? –

+0

Der Unterschied besteht darin, dass Sie, wenn Sie eine Funktion mit einem Parameter oder einer Variablen mit dem Namen myInput haben, mit self.myInput auf die Eigenschaft und myInput für den Parameter oder die Variable verweisen können. – 68cherries

Antwort

8

Ja, Ihre Methode, IBOutlet aus dem Storyboard zu erstellen und mit self.myInput.text zu referenzieren, ist eine Standardmethode für den Zugriff auf dieses Feld in Swift.

Als ob die Verwendung self.myInput vs. myInput, ziehe ich immer self zu schreiben, weil es sehr offensichtlich ist, dass die Variable ein Objekt ist und wird wahrscheinlich in vielen verschiedenen Orten (im Gegensatz zu einem lokalen var) geändert werden. Wenn Sie self haben, müssen Sie sich auch keine Sorgen darüber machen, lokale vars mit demselben Namen einzuführen oder Änderungen vorzunehmen, wenn Sie einen Codeblock in eine Closure kopieren und einfügen, die self erfordert.

Verwandte Themen