2009-08-10 2 views
5

Qualcosa di cui mi sono preoccupato per un po 'mentre sto sviluppando le mie applicazioni è la geometria spesso codificata di immagini e componenti di visualizzazione che danno per scontata la natura 320x480 delle generazioni di display correnti .Cambiamenti nella risoluzione dello schermo dell'iPhone nell'hardware futuro

Ho visto molte risposte in StackOverflow e negli esempi/tutorial che il codice duro nelle dimensioni dello schermo. Ho anche realizzato trame per sfondi con dimensioni 320x480, ma sto attento a renderli UIViewContentModeScaleToFill, ma non sono del tutto positivo che il posizionamento dei pixel nell'IB comporterà interfacce specifiche per l'hardware.

Ad un certo punto immagino (e spero!) Che l'iPhone abbia risoluzioni di schermo diverse.

  • Sei come gli sviluppatori di pianificazione per questo?

  • Che cosa stai facendo per tenere conto delle risoluzioni dello schermo variabile nel futuro ?

(Supponendo, naturalmente, che qualcuno vorrebbe più di 640KB, oh scusate, 320x480 risoluzione :))

consulta questo URL: http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/SupportingResolutionIndependence/SupportingResolutionIndependence.html#//apple_ref/doc/uid/TP40007072-CH10

Per iOS4 risposta da Apple.

+1

Penso che intendessimo 320x480. – David

risposta

2

Si dovrebbe essere. Se esiste un modo per recuperare tali metriche dall'API, dovresti. Ai vecchi tempi del mac, un sacco di codice codificato per lo schermo da 9 "Quando ho ottenuto il mio Mac XL (essenzialmente un case di lisa con una scheda madre mac all'interno) ha uno schermo da 12" e il numero di " "app che non sono state ridimensionate" era una leggenda.

In breve, se ci sarà un cambiamento radicale nell'hardware, Apple lo farà sicuramente. Qualsiasi azienda che possa cambiare con successo piattaforme di chip TWICE non ha paura di aggiornare hardware, software e quant'altro per migliorare le cose.

2

Penso che tu abbia inavvertitamente risposto alla tua stessa domanda (stai pianificando per questo) nella tua descrizione del problema. Se gran parte del codice di esempio che vedi non ne tiene conto, molti sviluppatori (che copiano/incollano dal codice di esempio) non ne fanno parte.

Immagino che se Apple consentirà altre risoluzioni, che abbiano un modo di funzionare in modalità di compatibilità per le applicazioni precedenti o un modo per verificare la risoluzione desiderata (con l'impostazione predefinita è la risoluzione esistente quindi le vecchie app non devono cambiare).

+0

È possibile utilizzare UIView.autoResizingMask e varie altre manopole per ottenere la risoluzione dello schermo.Questi sono tutti disponibili, e * I * sto tenendo conto di ciò, ma mi chiedo se altri sviluppatori sono (come te?) – groundhog

+0

Immagino che sia quello che stavo cercando di dire. Sebbene tu possa essere abbastanza illuminato per conoscere le tecniche ... se la maggior parte del codice di esempio disponibile per gli sviluppatori non prende in considerazione la risoluzione, allora (IMO) la maggior parte degli sviluppatori non –

3

Si potrebbe voler controllare NSScreen per OS X e UIScreen per iPhone.

Dalla documentazione:

"... è necessario utilizzare le proprietà di questo oggetto per ottenere il raccomandato rettangoli cornice per la finestra dell'applicazione ."