2015-05-02 11 views
5

Così, a partire da Xcode 6 abbiamo ottenuto una nuova funzione super-utile di modello dello schermo lancio Davvero universale schermata di avvio di iOS utilizzando il modello Launch Screen.xib?

Secondo sua descrizione si può contribuire a creare uno schermo di lancio che funziona correttamente su tutti i dispositivi/risoluzione/orientamento e noi non è più necessario creare diversi schermi per risoluzioni diverse con il catalogo delle risorse.

ma ... Non sono riuscito a trovare alcun tutorial utile su come utilizzare effettivamente questo per creare un'unica schermata di avvio utilizzando un'unica immagine per tutte le risoluzioni (solo per orizzontale).

So come rendere un elemento dell'interfaccia utente centrato su tutte le risoluzioni utilizzando i vincoli, ma non riesco a capire come rendere la mia scala UIImage per riempire l'altezza dello schermo su tutte le risoluzioni. Se ridimensiono la mia UIImage per riempire la dimensione dello schermo selezionata in Metriche simulate - ne riempirà solo quella, ma non funzionerà con altre dimensioni dello schermo ..

Qualcuno può darmi un indizio? come rendere UIImage riempire l'intero schermo per tutte le risoluzioni usando questo modello di schermata di avvio?

+0

La schermata di avvio xib è lì per consentire all'utente di non dover utilizzare le immagini. Fondamentalmente non vuoi usare il modello della schermata di avvio e vuoi invece visualizzare un'immagine !? – luk2302

+1

sì, ho solo bisogno di visualizzare un'immagine, ma non voglio fare immagini diverse per risoluzioni diverse. Ad esempio su Android io uso solo un'immagine, ma l'ho impostato a livello di programmazione in modo da poter controllare come viene mostrato su risoluzioni diverse. Ho pensato che Launch Screen.xib mi permettesse di fare la stessa cosa, senza scrivere alcun codice –

+0

Lo schermo di lancio è lì per consentire di * progettare * la schermata di avvio, come qualsiasi normale visualizzazione visualizzata nella tua app. questo ti dà molta più flessibilità rispetto alle sole immagini. Ma ciò nondimeno, ciò che stai chiedendo è sicuramente possibile - controlla la mia risposta corrispondente. – luk2302

risposta

9

Se si desidera semplicemente riempire la schermata di avvio con un'immagine in ogni dimensione dello schermo, è possibile utilizzare i limiti iniziali, finali, superiori e inferiori tra il proprio UIImageView e il superview. Quindi:

Fase 1 Aggiungi la tua UIImageView al LaunchScreen.xib e impostare qualsiasi immagine dovrebbe visualizzare.

Fase 2 Seleziona il tuo appena aggiunto UIImageView e fare clic sull'icona "Pin" in basso a destra di Interface Builder.

Fase 3 Selezionare tutti i 4 lati del og impostare le costanti a 0. Questo fa in modo che il vostro UIImageView ha 0 punti dello spazio alla superview su ogni bordo.

Ecco come si presenta: enter image description here

Detto questo, si dovrebbe considerare se questa è la strada da percorrere. L'idea di avere un file .xib come schermata di avvio è in realtà destinata a sostituire la necessità di dover mostrare immagini di avvio a schermo intero. Invece, considera di posizionare gli elementi che l'immagine di lancio contiene nel generatore di interfacce. Ricorda anche che tu (sfortunatamente) non sei in grado di legare alcun codice insieme al tuo file .xib della schermata di avvio.

6

È necessario aggiungere un UIImageView per visualizzare il file xib e impostare i vincoli per riempire l'intero schermo, ad es. spaziatura a sinistra, a destra, in alto e in basso uguale a 0. (Hai già menzionato puoi farlo, quindi niente più istruzioni a riguardo)

Quindi ispeziona il tuo UIImageView, imposta l'immagine che desideri visualizzare e scegli come vista modeAspect Fill

enter image description here

questo modo il UIImageView prende l'immagine e scale in su, mantenendolo rapporto proporzionale durante il riempimento tutto il suo contenuto.

Problemi correlati