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 graphiques Android Discussion :

Problème d'insertion d'une image dans un layout avec weight


Sujet :

Composants graphiques Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 99
    Par défaut Problème d'insertion d'une image dans un layout avec weight
    Bonjour à tous,

    je début sur Android et je suis en pleine galère pour faire la mise en page que je souhaite.

    Je vous mets ci-dessous le rendu souhaité :


    J'ai fait un code pour essayer de faire ce que je veux. J'ai jonglé avec deux solutions qui me donnent le même résultat : soit des LinearLayout soit un TableLayout. Dans les deux cas j'ajoute des Weight pour avoir la présentation voulu.

    Mon problème est que tant que les layouts sont vides, ils se positionnent parfaitement. Quand j'ajoute le petit logo en haut à gauche, ma présentation n'est plus bonne et le layout du haut, qui couvre toute la bande supérieure est agrandi et je ne trouve pas moyen de lui garder la proportion originale.

    Je vous mets une partie du code pour que vous voyez :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    27
    28
    29
    30
    31
    32
     
        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:orientation="vertical"
            android:weightSum="100" >
     
            <LinearLayout
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="10"
                android:background="#000000"
                android:orientation="horizontal" >
     
    			<ImageView
    			    android:id="@+id/MenuImage"
    			    android:layout_width="wrap_content"
    			    android:layout_height="fill_parent"
    			    android:contentDescription="@string/main_image_desc"
    			    android:onClick="displayDetail"
    			    android:scaleType="center"
    			    android:src="@drawable/ic_launcher_trans" />
     
            </LinearLayout>
     
            <LinearLayout
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="90"
                android:baselineAligned="false"
                android:orientation="horizontal" >
            </LinearLayout>
    Merci d'avance pour votre aide précieuse...

  2. #2
    Membre averti
    Femme Profil pro
    Inscrit en
    Juin 2012
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2012
    Messages : 16
    Par défaut
    essaie ça dans ton imageview :

    android:adjustViewBounds="true"
    android:scaleType="fitXY"

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 99
    Par défaut
    Citation Envoyé par emowpya Voir le message
    essaie ça dans ton imageview :

    android:adjustViewBounds="true"
    android:scaleType="fitXY"
    J'ai essayé mais toujours le même résultat, la partie supérieure s'agrandie...

    Merci quand même,

  4. #4
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    Déjà il y a un problème....

    L'ImageView utilise android:layout_height="fill_parent"
    Hors le Layout parent utilise android:layout_height="wrap_content"
    Ca ne peut pas aller...

    Ensuite.. quelle taille fait l'image en dps ?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 99
    Par défaut
    Déjà, un grand merci pour ta réponse.

    Citation Envoyé par nicroman Voir le message
    Déjà il y a un problème....
    L'ImageView utilise android:layout_height="fill_parent"
    Hors le Layout parent utilise android:layout_height="wrap_content"
    Ca ne peut pas aller...
    Je pense bien voir le problème mais je ne sais pas trop quoi faire ? J'ai l'impression que l'on est obligé de remplir ces champs mais je ne sais pas quoi mettre d'autre...

    Citation Envoyé par nicroman Voir le message
    Ensuite.. quelle taille fait l'image en dps ?
    Je ne suis pas sûr de comprendre... J'ai pris l'image faite sous photoshop et j'ai redimensionner en plusieurs format l'image en les mettant dans les dossiers "drawable" correspondants. J'ai donc une image de 96px de haut, une de 72, une de 48 et une de 24px...

    Est ce que cela répond à ta question ?

    Merci d'avance...

  6. #6
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    Oui et non....

    Une interface se calcule en "dp"...
    Ls pixels ne sont qu'un moyen de remplir ces dps, et en fonction de la densité de l'écran on peut proposer plusieurs images... 1 dp = 1 pixel pour la résolution "mdpi"

    Si dans ton cas, 48 pixels = image en "mdpi", alors l'image fait (quelque soit la résolution de l'écran) "48dp" de haut.. Mais cela ne colle pas avec l'une des dimensions que tu as donné....
    Tailes pour 48dps:
    LDPI: 36pixels => pas bon
    MDPI: 48pixels => ok
    HDPI: 72pixels => ok
    XHDPI: 96pixels => ok
    XXHDPI: 144pixels => missing
    XXXHDPI: 182pixels => missing (mais uniquement pour Android 4.4)



    Essaye de faire sur papier un dessin de l'interface, avec les tailles "en dp" de chaque élément (160dp ~ 1 pouce).
    Ensuite "calcule" la taille que doit avoir l'icone en pixel (en fonction de la résolution).
    En général une "barre" d'action (même si tu n'utilises pas l'ActionBar) fait environ 48dp de haut. ( http://developer.android.com/design/...ics-grids.html ).
    Cela ne veut pas dire qu'elle doive faire exactement 48dp (layout_height="48dp") mais que les éléments à l'intérieur vont occuper cette place environ.

    Ensuite pour avoir un objet layout_height="wrap_content" il faut que le height des objets interieurs (le "content") soit ou bien prédéfinis (TextView,...), ou bien "wrap_content" eux même (ImageView, autre Layout...).

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

Discussions similaires

  1. [VB2005] Insertion d'une image dans un MessageBox?
    Par rafou28 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 01/08/2006, 16h31
  2. insertion d'une image dans developer oracle 10 suite g
    Par rethorique dans le forum Oracle
    Réponses: 2
    Dernier message: 18/06/2006, 15h17
  3. [C#]insertion d'une image dans imagelist et plantage
    Par Blo0d4x3 dans le forum Windows Forms
    Réponses: 9
    Dernier message: 22/04/2006, 12h49
  4. Problème avec l'insertion d'une image dans JPanel
    Par anutka dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 16/03/2006, 10h02
  5. Insertion d'une image dans la une base mysql...
    Par Angeldu74 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 01/06/2005, 14h00

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