Création de vues personnalisées
Bonjour à tous
J'ai crée une application multi périphérique et j'ai quelques soucis d'affichage sur certains appareils android.
Du coup j'ai décidé de créer des vues personnalisées en suivant cette documentation (http://docwiki.embarcadero.com/RADSt...lecteur_de_vue). La première partie est assez clair mais c'est dans la partie création du package que j'ai des problèmes.
En effet il y l'exemple de code ci dessous:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
unit Unit1;
interface
implementation
uses
system.Devices, system.Types, system.SysUtils;
const
ViewName = 'TestView'; // The unique name of the view, it has to be the same name as the one written between <Name></Name> tags of the DevicePreset.xml file.
initialization
TDeviceinfo.AddDevice(TDeviceinfo.TDeviceClass.Phone, ViewName,
TSize.Create(1216, 684), TSize.Create(1216 div 2, 684 div 2), // MinPhysicalSize(max, min), MinLogicalSize(max, min)
TSize.Create(1280, 720), TSize.Create(1280 div 2, 720 div 2), // MaxPhysicalSize(max,min), MaxLogicalSize(max,min)
TOSVersion.TPlatform.pfAndroid, 326); //Select the platform and the pixel density.
finalization
TDeviceinfo.RemoveDevice(ViewName); // To unregister the view after unistalling the package.
end. |
J'ai un peu de mal à comprendre à quoi correspondent les PhysicalSize et LogicalSize. De même il y a un facteur 2 entre les dimensions minimales et maximales d'où vient ce facteur?
Dans mon cas j'ai un téléphone qui a une résolution de 1600x720 avec une densité de pixel de 269. 1600x720 sont les dimensions logique ou physique?
Merci pour tout éclaircissement