Domanda

Ho un'app molto semplice che elabora i tocchi in una vista derivata da UIImageView.

La vista ha una matrice di coordinate rettangolari che fungono da pulsanti.

Poiché si tratta di un'app semplice, gestisco tutti gli eventi di tocco direttamente nella mia classe derivata da UIImageView.

Ho bisogno di avviare l'array di coordinate dell'immagine che è una variabile di istanza.

Ho provato a ignorare diversi metodi tra cui init, ma nessuno di quelli che ho provato viene chiamato.

Qual è il metodo corretto per sovrascrivere per inizializzare le variabili di istanza in una classe derivata UIImageView?

Grazie!

È stato utile?

Soluzione

Esistono diverse funzioni init (initWithFrame, initWithCoder, ecc.), e quale verrà chiamato dipenderà da come si sta caricando la vista immagine. Se lo stai caricando da un NIB, prova initWithCoder.

In alternativa, puoi sempre usare il metodo viewDidLoad nel tuo controller e fargli chiamare un metodo di inizializzazione personalizzato nella vista. Non lo consiglierei però in questo caso a meno che tu non abbia dovuto farlo in questo modo.

Altri suggerimenti

Se la classe viene caricata come parte di un pennino, è possibile utilizzare AwakeFromNib: per inizializzare le variabili quando viene caricato il file pennino.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top