Écart de style sur tous les Clients
Quelques solutions de MobileTogether pourraient avoir un aspect différent sur tous les systèmes d’exploitation (plateformes) car chaque système d’exploitation gère quelques propriétés de style différemment. (Les différentes plateformes sur lesquelles les solutions MobileTogether sont exécutées sont : Android, iOS, Windows, et Web.)
Cette rubrique :
•Explique comment vous pouvez créer un aspect uniforme sur toutes les plateformes, et
•énumère les propriétés qui sont gérées différemment par des plateformes spécifiques :
Créer un aspect uniforme sur toutes les plateformes
La manière la plus efficace de définir un aspect uniforme est d’identifier les styles de propriété qui sont gérés différemment sur toutes les plateformes, puis de définir la valeur pour chaque propriété via une expression XPath qui définit différentes valeurs pour différentes plateformes. Vous pouvez créer des branches conditionnelles dans l’expression XPath en utilisant les variables globales statiques qui détiennent l’information de la plateforme.
Par exemple, l’expression XPath suivante peut être définie sur la propriété de style Padding des composants de projet :
si ($MT_Android=true()) alors "0dp" else "1dp"
L’expression XPath ci-dessus définit une valeur de remplissage pour les appareils Android et une autre pour toutes les autres plateformes.
Vous pouvez définir ces définitions de propriété de style à l’un ou plusieurs des emplacements suivants :
•Par le biais de la mise en page design : Sur des contrôles individuels : sur la page ; dans les paramètres de projet
•Via les feuilles de style : Sur tous les contrôles ensemble ; sur un type de contrôle spécifique ; sur des tables d’une page ; sur une page
Dans les paramètres des propriétés de projet, vous pouvez définir UI Compatibility Mode comme true pour définir les valeurs par défaut.
Gestion spécifique à la plateforme de styles particuliers
Ci-dessous, vous trouverez une liste de propriétés de style qui sont gérées de manière notablement différente par au moins une plateforme.
Généralités
Les couleurs, polices et tailles par défaut varient selon les plateformes et les différents appareils sur une seule plateforme ; de plus, les contrôles ont un aspect différent selon les appareils et différentes versions d’un seul système d’exploitation.
Marges de contrôles du niveau supérieur
Les contrôles de niveau supérieur sont des contrôles situés directement à l’intérieur d’un conteneur de page. D’une autre manière, il s’agit de contrôles qui ne se trouvent pas à l’intérieur d’une table. Les appareils Android définissent une marge par défaut de 9px pour tous les contrôles de niveau supérieur (bien que le contrôle Label a une marge du bas de 0px). D’autres plateformes ont d’autres défauts. Vous pouvez utiliser la propriété des marges du niveau supérieur du dialogue Plus de Paramètres de projet pour définir les marges de contrôles du niveau supérieur de manière uniforme sur toutes les plateformes.
Contrôle Label
Sur Android, le contrôle Label a une marge par défaut de 9px de tous les côtés à l’exception du bas qui a une marge de 0px.
Remplissage
•Sur Windows, tous les contrôles (à l’exception du Contrôle Label) ont un « natural padding » par défaut de 1px. Ceci est écrasé quand vous définissez un remplissage dans un contrôle (par exemple, 0px).
•Sur iOS, une marge de table standard est appliquée : 9Px à droite et à gauche, et 5px au-dessus et en-dessous. Si les valeurs sont définies pour toute propriété de Remplissage de tables individuelles, alors cette valeur de Remplissage (haut, droite, bas ou gauche) est ajoutée à la valeur de remplissage de table iOS respective. Si vous souhaitez supprimer le remplissage/la marge de table iOS standard, définissez la valeur de propriété Remplissage de table iOS (dans une dialogue de projet Plus de paramètres de projet) à false.
Boutons
•Boutons Android ont un « natural padding », — même si 0px est spécifié.
•Les boutons iOS n’ont pas de remplissage d’arrière-plan. À la place, ils ont une « couleur de teinte ».
•Les boutons de thème sombre Windows sont transparents.
Bouton retour
Sur iOS, il n’existe pas de bouton Retour fourni par l’appareil qui soit toujours disponible. Vous allez devoir ajouter explicitement une option (touche ou alternative) qui permet aux utilisateurs iOS de quitter la solution.
Contrôles Liste modifiable
Sur iOS, des listes modifiables multilignes ne sont pas prises en charge.
Commande Interrupteur
Sur iOS, Switch controls n’ont pas de texte.
Contrôles DateTime
Le contrôle DateTime est disponible uniquement sur iOS.
Contrôle Rich Text
Sur les clients Windows, le contrôle Rich Text peut être édité sur un PC (dans un client web), mais ne peut pas être édité sur Windows Phone.
Largeur maximale Navigateur, Navigateur CSS Class
Ces popriétés de page s’appliquent à l’affichage du Navigateur Web.
Paramètres du Navigateur de projet
Les paramètres du Navigateur de projet s’appliquent uniquement à l’affichage du Navigateur Web.