ios swift uitextview

ios - UITextView cambio de datos rápido



uitextfield (3)

¿Cómo puede detectar un cambio de datos en un UITextView con Swift ? El siguiente código no hace ninguna detección.

Estoy declarando el UITextView :

@IBOutlet weak var bodyText: UITextView! optional func textViewDidChange(_ textView: UITextView!) { println(bodyText.text) }

Gracias scott


Debe configurar el delegate UITextView e implementar el método textViewDidChange: en él. Desafortunadamente, no sé si la documentación rápida está disponible en línea. Todos los enlaces van a la documentación objetivo-c.

El código se verá así

class ViewController: UIViewController, UITextViewDelegate { //If your class is not conforms to the UITextViewDelegate protocol you will not be able to set it as delegate to UITextView @IBOutlet weak var bodyText: UITextView! override func viewDidLoad() { super.viewDidLoad() bodyText.delegate = self //Without setting the delegate you won''t be able to track UITextView events } func textViewDidChange(textView: UITextView) { //Handle the text changes here print(textView.text); //the textView parameter is the textView where text was changed } }


Establecer delegate de UITextView .Refer UITextViewDelegate

Escribe esto en viewDidLoad

bodyText!.delegate = self


Para Swift 4:

func textViewDidChange(_ textView: UITextView) { // Your code here }