Come sapere quando UITextView è diventato il primo risponditore

Come gestire quando uitextview è diventato il primo responder. Ho il testo in formato testo e vorrei che quando la vista è diventato attivo desidera cancellare il testo. Come posso fare? Grazie in anticipo

InformationsquelleAutor n_yanev | 2011-08-11

 

5 Replies
  1. 55

    Si può sicuramente utilizzare un UITextViewDelegate metodo:

    - (BOOL)textViewShouldBeginEditing:(UITextView *)textView

    Restituire SÌ e l’intercetta all’interno di quel metodo. Si può anche fare per UITextFields con UITextFieldDelegate e:

    - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField

    Speranza che aiuta.

    • Questo dovrebbe essere accettato risposta
    • Pienamente d’accordo.
    • Non funziona se la TextView del isEditable di proprietà è stata impostata per false
    • Perché Textview diventare firstresponder se esso non può essere modificato, in primo luogo?
  2. 4

    Risposte precedenti e fare il lavoro grande per UITextBox, ma se si dispone di una classe derivata da NSResponder e hanno bisogno di sapere quando diventa di primo soccorso:

    -(BOOL) becomeFirstResponder
    {
        //Your stuff here
        return YES;
    }
  3. 3

    Come sopra, è possibile eseguire l’override di becomeFirstResponder ma si noti che è necessario chiamare l’implementazione della superclasse. Se non lo fai le cose come schioccare la tastiera su un campo di testo non funziona. cioè

    override func becomeFirstResponder() -> Bool {
      if super.becomeFirstResponder() {
        //set up the control state
        return true
      }
    
      return false
    }
  4. 3

    Swift 4 soluzione

    func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool {           
            return true
     }
  5. 1

    textViewShouldBeginEditing scattare in realtà, prima che il testo diventa il primo a rispondere.

    textViewDidBeginEditing attiverà una volta che il testo diventa il primo a rispondere e sarebbe il posto migliore per eseguire il codice che ha bisogno di sapere che cosa attiva textview è.

    Se non siete veramente preoccupati per il campo è attivo e la voglia di cancellare il testo una volta che il campo è premuto su, è possibile utilizzare una funzione.

    EDIT: Gli stessi metodi sono disponibili per i campi di testo.

Lascia un commento