Sono stato molto felice di sapere che le classi di dimensioni sono compatibili con le versioni precedenti di iOS 7 (in alcuni casi). Ora mi chiedo - c'è un modo per usare le classi di dimensioni per distinguere tra iPhone 5, 6 e 6 Plus?Classi di dimensioni per distinguere tra iPhone 5, 6 e 6 Plus?
risposta
No. Anzi, al contrario, le classi di dimensioni vengono utilizzate per astrarre il dispositivo. Questi sono la classe attualmente utilizzato dimensioni:
larghezza compatto, altezza compatta: 3,5" , 4" , 4.7" iPhone in modalità orizzontale
larghezza compatto, altezza regolare: tutti gli iPhone attualmente disponibili in Ritratto
regolare la larghezza, compatti altezza: 5.5" iPhone in Landscape
larghezza normale, altezza regolare: tutti gli iPads attualmente disponibili indipendentemente dall'orientamento
Si potrebbe provare il test contro l'altezza dello schermo (o larghezza) ad esempio:
//iphone 5
if UIScreen.main.bounds.size.height == 568.0 {
// your code here
}
altezze schermo di iPhone sono i seguenti:
iphone 5 = 568,0
iPhone 6/6S/7 = 667,0
iphone 6/7 plus = 736,0
Vorrei controllare 'UIScreen.main.bounds.size.height' e non per la dimensione della vista –
sì, questo è un modo migliore, codice aggiornato! –
ho capito, ma se voglio per apportare modifiche solo al mio iphone3.5 e mantenere il layout uguale per tutti gli altri, cosa devo fare? –
È un problema non riuscire ad es. avere dimensioni e spaziature dei caratteri diversi per iPhone5s e iPhone6s. Per alcuni layout dell'interfaccia utente questi schermi sono mondi a parte. Le classi di dimensioni sono troppo grossolane. –