Messaggi in Xcode

di il
4 risposte

Messaggi in Xcode

Buongiorno, quando posiziono un bottone UIbutton nella main.storyboard di un progetto Xcode e trascino con control il metodo di quest'ultimo all'interno del viewcontroller, mi appare una funzione approssimativamente simile a questa > func touchdigit(sender : UIbutton). Io non capisco che cosa succede quando nella Run dell'applicazione stessa premo il bottone. Non capisco la correlazione che c'è tra il "premere il bottone" e la chiamata del parametro sender. Qualcuno riuscirebbe a spiegarmelo per caso?

4 Risposte

  • Re: Messaggi in Xcode

    Ciao, in linea generale succede questo: quando tu "colleghi" un elemento grafico a un metodo, XCode crea automaticamente un'associazione fra l'evento "utente che preme il bottone" e il metodo, in modo che quest'ultimo sia chiamato ogni volta che si verifica l'evento. Nota che nulla vieta di associare più pulsanti ad uno stesso metodo, anzi a volte può essere molto comodo per evitare di dover scrivere tanti metodi molto simili fra loro. In casi come questo come fai a discriminare qual è il bottone che ha scatenato l'evento? Il parametro "sender" serve proprio a questo, ovvero a dire qual è il bottone che è stato premuto e che quindi ha "scatenato" l'invocazione del metodo.
  • Re: Messaggi in Xcode

    Ti ringrazio molto!
    Quindi presumo che il bottone di per se sia un oggetto perchè é possibile chiamare i suoi metodi utilizzando l'istruzione sender.currentTitle ad esempio, mi sbaglio?
  • Re: Messaggi in Xcode

    Si, gli elementi grafici sono oggetti.
    Puoi verificarlo dalla dicitura "class" nella documentazione, ad esempio in quella di UIButton: . Comunque "currentTitle" è un campo, e forse anche in sola lettura, ma non ho controllato la documentazione
  • Re: Messaggi in Xcode

    Ti ringrazio molto!
    Buona giornata!
Devi accedere o registrarti per scrivere nel forum
4 risposte