2013-11-21 28 views
7

Ho iniziato a sviluppare un gioco con Delphi XE5 per iOS. Ho un problema con la funzione Risoluzione di Firemonkey.Come trovare la risoluzione sotto Delphi XE5

Quando apro lo schermo e controllo la risoluzione su iPhone ottengo 320x480. Ma la risoluzione nativa di iPhone 4 e 5 è raddoppiata. Ho trovato nelle pagine ufficiali di Delphi che FireMonkey sta ricalcolando lo schermo con "Risoluzione" che è per il display Retina 2.

Penso che questa sia una funzione interessante per le app normali, ma quando inizi a giocare e vuoi manipolarlo con immagini per codice porta situazioni strane.

La mia domanda è - è tutto per trovare il valore reale risoluzione o almeno quello che è il tipo di dispositivo reale (iPhone, iPad?)

grazie

risposta

3

ok, abbiamo trovato le risposte.

C'è un'unità FMX.Platform che procura dati abbastanza importanti.

var 
ScreenSvc: IFMXScreenService; 
begin 
if TPlatformServices.Current.SupportsPlatformService(IFMXScreenService, IInterface(ScreenSvc)) then 
begin 
    <your code> 
end; 
end; 

ed i valori dei risultati sono i seguenti:

ScreenSvc.GetScreenSize.X 
ScreenSvc.GetScreenSize.Y 
ScreenSvc.GetScreenScale