it-swarm.dev

App che non utilizza l'altezza completa di iPhone 5

Ho una app che è stata creata molto tempo fa e l'ho aggiornata per usare gli storyboard. Tutti i punti di vista sono stati ricostruiti e collegati. Tuttavia, l'App non utilizza l'intera altezza di un iPhone 5, anche se in Storyboard, mostra che si adattano in base alle dimensioni dello schermo. In effetti, nessuna delle schermate di avvio viene visualizzata al momento del lancio. È solo uno schermo nero.

Ho un'immagine di avvio a dimensione intera opportunamente dimensionata e denominata. E viene visualizzato nella scheda Generale delle impostazioni. Mi manca un'impostazione o qualcosa che deve essere cambiato? Ho provato di tutto.

Nota aggiuntiva: ho la sensazione che abbia qualcosa a che fare con la schermata di avvio non visualizzata al momento del lancio. Anche se l'impostazione è presente con tutte e tre le schermate di avvio. È solo una schermata nera vuota che appare durante l'avvio.

18
Michael Reiland

Se inserisci le immagini di avvio nel catalogo delle risorse, questo potrebbe essere il problema:

Nelle impostazioni principali del progetto (quando fai clic sulla voce in alto nel browser dei file) sotto "Generale", scorri verso il basso a metà strada verso "Icone di app e Avvia immagini". C'è una voce in là per "Avvia sorgente immagini". Probabilmente vedrai un pulsante che dice qualcosa come "Usa catalogo delle risorse". Quando fai clic su di esso, Xcode ti chiederà di "migrare" le immagini di lancio nel catalogo delle risorse. Vai avanti e fallo, anche se probabilmente creerai un nuovo set di immagini di lancio vuoto, che potrai eliminare in seguito. Quindi, una volta terminato, dovresti vedere un menu a discesa in cui si trovava il pulsante, e lì puoi selezionare le immagini di lancio effettive. Quindi, se lo desideri, puoi accedere al catalogo delle risorse e rimuovere il set di immagini di avvio appena creato da Xcode.

Guarda la foto qui sotto, assicurati che LaScreen Screen File abbia una voce!

 enter image description here

35
James Nick Sears

Basta aggiungere l'immagine splash per iPhone 5, (640 x 1136)

4
zaheer

Ho appena trovato il tuo post durante la ricerca di qualcosa correlato, non so se lo hai ancora risolto ma ho riscontrato un problema durante l'aggiornamento della mia app per includere immagini a retina e non sono stati rilevati dall'app ... fino a quando non ho individuato la casella di controllo Target Membership in File Inspector per l'immagine.

Le nuove immagini che avevo aggiunto alla soluzione non erano spuntate per la mia app in File Inspector, quindi non venivano compilate - una volta spuntate, venivano incluse e visualizzate nel contesto corretto.

2
Jools
  1. Crea un nuovo progetto (Applicazione vista singola).
  2. Trascina il LaunchScreen.stroyboard nel tuo progetto (seleziona "Copia gli elementi se necessario").
  3. Seleziona la "LaunchScreen.storyboard" copiata come "Launch Screen File". 

Ho provato con una app senza Xib/storyboard in Xcode 7 GM.

2
hiroshi

Hai l'immagine di avvio (predefinita) con dimensioni 640 x 1136? Se non hai questa immagine, devi aggiungere un'immagine con nome Default-568h@2x.png e con dimensione 640 x 1136.

Senza questa immagine, iOS pensa che la tua app non supporta la nuova dimensione.

AppleDocs

2
Andrew Romanov

Anch'io ho affrontato lo stesso problema. Nel mio caso sto usando un file MainWindow.xib

E quando stampo il fotogramma di Window il suo {0,0}{320,568} ma l'app non ha risposto all'area dopo 480 px.

Quello che ho fatto è aprire il file Mainwindow.xib nel generatore di interfaccia e impostare Schermo intero all'avvio opzione selezionata. 

Allego lo screeshot dove puoi trovare questa opzione.

enter image description here

questo funziona per me. Prova anche a scoprire che se stai usando un Mainwindow.xib, allora applica lo stesso.

Spero che ti aiuterà a risolvere il tuo problema. Buona programmazione .. !!!

1
iProgrammer

Probabilmente ti manca la versione Retina-4 della tua immagine di lancio, il sistema avvierà la tua app in modalità 3.5 "se non è presente. Se attualmente hai, per esempio, Default.png e Default@2x.png, aggiungi una versione 640x1136 chiamata Default-568h@2x.png.

1
Noah Witherspoon

La tua app è stata compilata con iOS 5 o versioni precedenti e la stai visualizzando su un dispositivo con iOS 6 o versioni successive. 

imposta il target della tua applicazione come iOS 7 in Xcode e usa i vincoli di layout automatico per farlo funzionare su entrambi i dispositivi. Ti suggerirò di avere più storyboard se vuoi supportare iOS 5 o versioni precedenti perché non hanno vincoli di layout automatico. 

È necessario compilare il codice con iOS 6 + SDK e utilizzare i vincoli di layout automatico.

// Modifica: se stai già utilizzando iOS 6+ come target di distribuzione per il tuo progetto

Se il tuo iOS è impostato su 6 e versioni successive, controlla le impostazioni dello storyboard se lo storyboard deployment target è iOS 6 e versioni successive.

0
Kunal Balani

Ho seguito tutti i passaggi elencati e ancora non ha funzionato. 

Dopo la migrazione ho dovuto impostare un 'Launch Screen File'. Dopo che l'ho fatto ha funzionato come un incantesimo. Se si dispone di un progetto precedente come quello che ho fatto, è possibile creare un file di schermata di avvio: File> Nuovo> File> Interfaccia utente> Schermata di avvio. 

0
user18853

Se si sta utilizzando il catalogo delle risorse di immagini di avvio. Potresti non aver aggiunto immagini per il segnaposto retina . Basta aggiungere anche le immagini. Probabilmente puoi aggiungere la stessa immagine della sezione 2x lì. Quindi modificare contents.json nella cartella delle risorse in modo che le immagini duplicate non vengano create per la stessa.

0
vj9