Domanda

Ho un file pennino dove ho una vista che contiene un'immagine di sfondo, un pulsante e un'altra immagine che copre l'intero schermo (l'ombra), che deve essere spostato verso la parte anteriore. Nella visualizzazione, sto creando vista del bambino, e dopo aver creato quelle e l'aggiunta di loro utilizzando [self addView] ho bisogno di spostare verso la parte anteriore l'immagine dell'ombra.

Attualmente sto usando l'attributo tag per trovare questo punto di vista, ma sto pensando probabilmente c'è un modo migliore, attraverso l'identificazione dei subviews che aggiungo in Interface Builder da qualche nome.

I tenta di aggiungere un IBOutlet per collegare la visualizzazione secondaria con il suo genitore, ma non ha funzionato (e non aveva senso, dal momento che la visualizzazione secondaria è già collegato al suo genitore in qualche modo).

È stato utile?

Soluzione

Il IBOutlets modo dovrebbe funzionare, ed è probabilmente il modo migliore per farlo. Assicurarsi che hai fatto il collegamento adeguato in Interface Builder dopo averli dichiarati nel file h.

Altri suggerimenti

L'iPhone fa un lazy loading di controller di vista. Il pennino potrebbe non essere stata eseguita in initWithCoder o qualsiasi altro metodo init per quella materia come Kendall specificato.

viewDidLoad è il luogo preferito per accedere a qualsiasi cosa dal pennino se si desidera accedere prima viene visualizzata la vista.

La speranza che aiuta.

A che punto stai cercando di accedere alle subviews? Se si prova all'interno di init di un ViewController, i IBOutlets saranno pari a zero. Il primo metodo si può arrivare a loro è probabilmente viewDidLoad.

La ragione ha senso di fare le cose in questo modo è che IBOutlets sono solo puntatori scalo a qualche componente, anche se sono già subviews di qualcos'altro. Basta risparmiare un sacco di caccia.

Uso della tag è un modo perfettamente valido per individuare viste specifiche, fino a quando si sta utilizzando il viewWithTag: metodo. Se si sta già utilizzando i tag, non c'è bisogno di cambiare per IBOutlets meno che non solo non ti piace chiamare viewWithTag:.

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