IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants FMX Delphi Discussion :

[Delphi 10] Style pas pris en compte sur Android [Android]


Sujet :

Composants FMX Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif Avatar de Coudrak
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 66
    Par défaut [Delphi 10] Style pas pris en compte sur Android
    Bonjour,

    J'arrive à utiliser les styles sous Windows, pas de problème.
    Par contre, une fois déployé sur un mobile Android, ou sur l'émulator Android, rien, aucun style n'est pris en compte, c'est le style natif Android qui est rendu.

    Mon utilisation est simple:
    Je pose juste un StyleBook sur la form, et lui fait charger un style en defaut fourni avec Delphi 10 comme le fichier "Dark.style".

    J'ai aussi ajouté un bouton pour en appliquer un dynamiquement, en ayant mis "MetropolisUIGreen.Style" en ressource :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    procedure TForm2.Button1Click(Sender: TObject);
    var
      stream: TResourceStream;
    begin;
      stream := TResourceStream.Create(HInstance, 'RC_GREEN', RT_RCDATA);
      StyleBook1.Resource.LoadFromStream(stream);
      Invalidate; // Pour rafraîchir toute la form
    end;
    Sous Windows je peux donc dynamiquement changer de couleur de la form en cliquant sur ce bouton en appelant la resource d'un fichier style différent, et ça marche.

    Mais sous Android, rien du tout, même pas de message d'erreur.

    PS : Pas essayé sous iOS.

    Je suis à court d'idées...
    Toute aide bienvenue, merci !

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 658
    Billets dans le blog
    65
    Par défaut
    Bonjour,

    je n'ai pas essayé car je n'ai encore aucune application Androïd en objectif immédiat, mais il est à noter que XE10 a apporté quelques changements aux styles et c'est peut être là que le bât blesse.
    Tout d'abord, le multi vue, apparu avec XE7 je crois, est-ce qu'une vue particulière à été définie pour Androïd ?
    Ensuite le StyleBook en lui même, c'est la nouveauté depuis XE10, un StyleBook contient une collection de Styles (tous les styles proposés, ne proposant pas forcément l'éventail complet d'OS) il faut peut être chercher dans cette direction.

    Tout cela est purement spéculatif, mais je serai content d'en avoir le dénouement

  3. #3
    Membre actif Avatar de Coudrak
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 66
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    (tous les styles proposés, ne proposant pas forcément l'éventail complet d'OS) il faut peut être chercher dans cette direction.
    Youhoou, vous m'avez aidé à trouvé le souci !

    Voilà, en fait les styles comme "MetropolisUIGreen" ou "MetropolisUIBlue", ne sont pas dispos pour Android !
    Et ceux gris foncés comme Dark le sont, en fait, et ça fonctionnait pour eux.

    Sauf que l'éditeur de style est assez trompeur pour un novice comme moi : quand on charge un style pas disponible pour Android, la listbox en haut repasse sur "Défaut", en affichant toute la structure de style dans la fenêtre de gauche, au lieu de rester sur Android et d'afficher une structure vide. Si on ne remarque pas ce switch sur Défaut, on pense que le chargement a fonctionné pour la plateforme sélectionnée...

    Merci !

  4. #4
    Membre actif Avatar de Coudrak
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 66
    Par défaut
    Si jamais d'autres veulent utiliser les styles comme Metropolis sur Android, j'ai trouvé l'astuce, il faut éditer le fichier .style et ajouter [ANDROID] :

    PlatformTarget = '[ANDROID][MSWINDOWS][ALTERNATE][DEFINEFONTSTYLES]'
    MobilePlatform = True

  5. #5
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 658
    Billets dans le blog
    65
    Par défaut
    Bonjour,

    les diverses techniques que j'ai testé pour changer les styles (pas encore celle que tu utilises) m'ont toutes provoquées des fuites mémoires.
    Qu'en est-il pour ton programme ?

  6. #6
    Membre actif Avatar de Coudrak
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 66
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    Bonjour,

    les diverses techniques que j'ai testé pour changer les styles (pas encore celle que tu utilises) m'ont toutes provoquées des fuites mémoires.
    Qu'en est-il pour ton programme ?
    Ah, effectivement, fuite mémoire, même en ajoutant stream.Free !

    Pour mon appli c'était juste pour tester, au final je ne permets qu'un seul style, sélectionné avec l'éditeur de style, donc je n'ai plus de ligne de code pour charger un style, et je n'ai pas de fuite mémoire.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [FireBird 2.5+Delphi 10]Update qui n'est pas pris en compte
    Par Kneukar dans le forum Bases de données
    Réponses: 7
    Dernier message: 19/11/2015, 14h47
  2. CSS Pas pris en compte sur ma page JSF
    Par Gigic21 dans le forum JSF
    Réponses: 2
    Dernier message: 23/04/2015, 11h38
  3. Fichier style d'un RSS pas pris en compte
    Par androz dans le forum Langage
    Réponses: 3
    Dernier message: 27/09/2009, 06h58
  4. Réponses: 3
    Dernier message: 18/07/2009, 19h41
  5. Mon script cron n'est pas pris en compte
    Par tomnie dans le forum Linux
    Réponses: 11
    Dernier message: 31/03/2004, 11h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo