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

Android Discussion :

Multi résolution d'écran


Sujet :

Android

  1. #1
    Membre habitué Avatar de cad13
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 247
    Points : 197
    Points
    197
    Par défaut Multi résolution d'écran
    Bonjour,

    J'essaie de faire une belle interface avec des images en background de mes layouts, mais je positionne des widgets bien précisément en fonction de ces background et la position de ces widgets varie en fonction de la résolution d'écran.

    J'ai utilisé toutes les suggestions de Google en positionnant avec "dip" au lieu de "px" et en ajoutant les répertoires "layout-small" et "layout-large" à "res", mais cela ne fonctionne que pour distinguer 3 types d'écrans : petits (2,7 pouces), moyens (2,2 à 4 pouces) et grands (sup à 5,1 pouces).

    Mon problème est qu'entre un écran QVGA (exemple HTC Hero) et un écran WVGA (exemple Nexus one), c'est le même layout qui est utilisé, et donc j'ai soit un bon positionnement pour l'un, soit pour l'autre, mais pas les deux...

    La seule solution que je vois est de tester la résolution de l'écran en faisant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    getWindowManager().getDefaultDisplay().getWidth() (ou getHeight());
    et ensuite de faire 2 layouts différents.

    Quelqu'un aurait-il une autre solution ?
    Christian
    Nexus 1 sous Cyanogen - Acer A500

  2. #2
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Points : 4 240
    Points
    4 240
    Par défaut
    Salut,

    Tu mentionnes les notions de "layout-small" et "layout-large", mais as tu également pensé à utiliser les "layout-ldpi" et "layout-hdpi" ?

    Sinon, si tu peux carrément préciser la dimension des écrans. exemple : "layout-480x320".
    Si vous jugez mon post utile dans la résolution de votre problème, n'hésitez pas à utiliser le système de vote afin d'améliorer la qualité du forum

  3. #3
    Membre habitué Avatar de cad13
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 247
    Points : 197
    Points
    197
    Par défaut
    Ah non ! j'avais pas essayé !

    Je fais l'essai tout de suite...

    PS : tu es une encyclopédie vivante ! fais attention, Google va te scanner...
    Christian
    Nexus 1 sous Cyanogen - Acer A500

  4. #4
    Membre habitué Avatar de cad13
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 247
    Points : 197
    Points
    197
    Par défaut
    J'ai essayé, et j'ai le même problème... De plus il mélange des fois entre les layouts et je dois tout recommencer...

    Tant pis, je vais passer par la résolution d'écran et deux layouts dans le même répertoire.

    Merci
    Christian
    Nexus 1 sous Cyanogen - Acer A500

  5. #5
    Membre habitué Avatar de cad13
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 247
    Points : 197
    Points
    197
    Par défaut
    D'ailleurs c'est bizarre et ça explique peut-être mes soucis, lorsque je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Log.i("??", String.valueOf(getWindowManager().getDefaultDisplay().getWidth()));
    il m'affiche 320 pour mon Nexus one !
    Christian
    Nexus 1 sous Cyanogen - Acer A500

  6. #6
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Points : 4 240
    Points
    4 240
    Par défaut
    C'est parce qu'il te retourne la taille en "dip".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pixels = dips * (density / 160)
    Si je me trompe aps la densité du N1 est 240.
    Donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    320dip * (240 / 160) ==> 480px
    Si vous jugez mon post utile dans la résolution de votre problème, n'hésitez pas à utiliser le système de vote afin d'améliorer la qualité du forum

  7. #7
    Membre habitué Avatar de cad13
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 247
    Points : 197
    Points
    197
    Par défaut
    Merci pour l'info, effectivement je n'y ai pas pensé.

    En tout cas, mon système fonctionne et je peux distinguer mon Nexus d'un téléphone de moindre résolution, c'est ce que je recherchais.

    Bon Noël et bonne année à tous.
    Christian
    Nexus 1 sous Cyanogen - Acer A500

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

Discussions similaires

  1. Obtenir la résolution d'écran des utilisateurs ?
    Par piff62 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 23/04/2006, 00h47
  2. Résolution d'écran
    Par Pierre Fauconnier dans le forum Windows
    Réponses: 3
    Dernier message: 25/01/2005, 08h07
  3. [D7] Création d'icône multi-résolutions
    Par Bidouille dans le forum Composants VCL
    Réponses: 3
    Dernier message: 04/10/2004, 22h05
  4. Comment connaître la résolution d'écran ?
    Par Frunz dans le forum Langage
    Réponses: 3
    Dernier message: 18/06/2004, 17h50
  5. Résolution d'écran
    Par titicurio dans le forum C++Builder
    Réponses: 8
    Dernier message: 10/10/2003, 17h40

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