2011-11-22 11 views
7

Dopo aver creato un file xib vuoto, sembra che sia possibile trascinare una UIWindow o una UIView per coprire l'intero schermo. La mia domanda è quali sono le differenze pratiche tra i due e in quali circostanze dovremmo usare l'uno sull'altro?La differenza tra una UIWindow e una UIView

+0

Come possiamo trascinare un'UIWindow ad un vuoto '.xib' presentare? Non riesco a farlo in Xcode. –

risposta

19

Windows non ha alcun contenuto visibile ma fornisce un contenitore di base per le viste dell'applicazione. Le viste definiscono una porzione di una finestra che si desidera riempire con alcuni contenuti. In genere, c'è solo una finestra in un'applicazione iOS.

About Windows and Views

+4

Un altro modo di pensare a questo è che una finestra non può mai avere una superview. È la cosa che si trova nella parte superiore della gerarchia della vista. – jemmons

+0

Grazie per la risposta e il collegamento è molto utile ... – Stanley

+1

Tecnicamente una finestra * non * copre l'intero schermo. La * vista * della finestra fa. Quindi pensa a un 'UIView' come parte di controllo dello schermo: disegnalo ad esso ecc. Una finestra è un semplice contenitore. –

8

Non è un o/o tipo di cosa. La tua app deve avere un'istanza UIWindow che sia il contenitore per le istanze di UIView che presenti.

Un'app può caricare l'istanza UIWindow da un file pennino oppure può crearla a livello di programmazione. Guarda un codice di esempio per vedere come è fatto.

+0

Grazie per la risposta, ma è vero che ci dovrebbe essere solo una UIWindow per ogni progetto? – Stanley

+0

@Stanley di solito è così, sì. Tuttavia non è obbligatorio ma solo comune. – Till

+2

Un caso in cui ne hai due è quando vuoi gestire uno schermo esterno, per esempio. – jbat100

Problemi correlati