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 :

Redimensionnement imageBouton non effectuer


Sujet :

Android

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Octobre 2011
    Messages : 80
    Points : 56
    Points
    56
    Par défaut Redimensionnement imageBouton non effectuer
    Bonjour,

    J'ai un soucis avec mon application android, mes images bouton ne sont pas redimensionner en fonction du support qui exécute le code. Voici mon activity_main.xml:

    Quelqu'un sait de quoi celui viens ?

    (et comment supprimer tout les warnings sur les ImageButton ?)

    Merci d'avance =)

    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        xmlns:app="http://schemas.android.com/apk/res/com.example.othellovirlouvet"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context=".MainActivity" >
     
        <GridLayout
            android:id="@+id/grid1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_centerHorizontal="true"
            android:layout_marginBottom="32dp"
            android:columnCount="8"
            android:rowCount="8" >
     
            <ImageButton
                android:id="@+id/ImageButton1_1"
                android:layout_gravity="left"
                android:src="@drawable/case_vide" />
     
            <ImageButton
                android:id="@+id/ImageButton1_2"
                android:layout_gravity="left"
                android:src="@drawable/case_vide" />
     
            <!--  etc  creation d'une matrice de 8x8-->
     
            <ImageButton
                android:id="@+id/ImageButton8_7"
                android:layout_gravity="left"
                android:src="@drawable/case_vide" />
     
            <ImageButton
                android:id="@+id/ImageButton8_8"
                android:layout_gravity="left"
                android:src="@drawable/case_vide" />
        </GridLayout>
     
        <GridLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:columnCount="3"
            android:rowCount="2" >
     
            <TextView
                android:id="@+id/cptj1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="left"
                android:layout_marginRight="54dp"
                android:text="2" />
     
            <ImageView
                android:id="@+id/bouton_j1"
                android:layout_gravity="left"
                android:src="@drawable/joueur_off" />
     
            <TextView
                android:id="@+id/textView1"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_gravity="left"
                android:paddingTop="5dp"
                android:text="Joueur1" />
     
            <TextView
                android:id="@+id/cptj2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="left"
                android:text="2" />
     
            <ImageView
                android:id="@+id/bouton_j2"
                android:layout_gravity="left"
                android:src="@drawable/joueur_off" />
     
            <TextView
                android:id="@+id/textView2"
                android:layout_gravity="left"
                android:gravity="center_vertical"
                android:paddingTop="5dp"
                android:text="Joueur2" />
     
            <ImageView
                android:id="@+id/imageView1"
                android:layout_column="0"
                android:layout_gravity="center_horizontal|top"
                android:layout_row="0"
                android:src="@drawable/case_pion_blanc" />
     
            <ImageView
                android:id="@+id/imageView2"
                android:layout_column="0"
                android:layout_gravity="center_horizontal|top"
                android:layout_row="1"
                android:src="@drawable/case_pion_noir" />
     
        </GridLayout>
     
    </RelativeLayout>

  2. #2
    Expert éminent

    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
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    Citation Envoyé par dragonxav72 Voir le message
    Bonjour,
    Bonjour

    J'ai un soucis avec mon application android, mes boutons images ne sont pas redimensionnés en fonction du support qui exécute le code. Voici mon activity_main.xml:
    Quelqu'un sait de quoi cela vient ?
    Heu... aurais-tu un dessin de ce que tu veux arriver à faire ?
    Parce que coller des GridLayout à l'intérieur d'un RelativeLayout me semble osé...

    Redimensionnés dans quel sens ? Quel est le problème exactement, et quelles sont les ressources définies ? (par exemple drawable/case_vide possède bien toutes les version mdpi/hdpi/xhdpi/xxhdpi ?)

    En plus il manque tous les android:layout_width et android:layout_height dans les ImageButton et ImageView.

    (et comment supprimer tout les warnings sur les ImageButton ?)
    Tu parles de quels warning ? (déjà il devrait y avoir ceux du width/height...).
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Octobre 2011
    Messages : 80
    Points : 56
    Points
    56
    Par défaut
    Citation Envoyé par nicroman Voir le message
    Heu... aurais-tu un dessin de ce que tu veux arriver à faire ?
    Parce que coller des GridLayout à l'intérieur d'un RelativeLayout me semble osé...
    Voici ce que j'ai comme interface

    Nom : ihmactu.png
Affichages : 122
Taille : 2,4 Ko

    avec en haut a droite un gridLayout (pas de problème avec celui-ci)
    et avec en bas un autre gridLayout qui contient 64 imageButton,

    Citation Envoyé par nicroman Voir le message
    Redimensionnés dans quel sens ? Quel est le problème exactement, et quelles sont les ressources définies ? (par exemple drawable/case_vide possède bien toutes les version mdpi/hdpi/xhdpi/xxhdpi ?)
    mon problème est que celui-ci (le gridLayout du bas) reste toujours de cette taille quelque soit la taille de l'écran, j'aimerais qu'il maximise la place disponible (sans écraser le gridLayout du haut)

    actuellement mes images sont uniquement dans le dossier mdpi en 30px / 30px.

    Citation Envoyé par nicroman Voir le message
    En plus il manque tous les android:layout_width et android:layout_height dans les ImageButton et ImageView.

    Tu parles de quels warning ? (déjà il devrait y avoir ceux du width/height...).
    Surement de ceux la je ne sais pas exactement, eclipse m'indique juste : Missing contentDescription on image


    Merci beaucoup pour ton message, si tu as besoin d'informations complémentaire n'hésite pas !

  4. #4
    Expert éminent

    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
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    Le problème, c'est qu'un "ImageButton" fait la taille de l'image quelle contient (c'est fait pour) à priori. Si on part sur une image de 32dp, elle fera toujours 32dp... si l'écran fait 320dp, on pourra en mettre 10, si il fait 520dp, on pourra en mettre 16...
    Le GridLayout va utiliser la taille des éléments à l'intérieur pour définir la taille des colonnes/lignes. Il y est donc impossible d'utiliser effectivement de layout_width/layout_height, et de ce fait... Si on a des images de 32dp, le GridLayout fera toujours 32x8 = 256dp, quel que soit la taille de l'écran.

    Je pense qu'il ne faut pas passer par un GridLayout (c'est un peu comme les tables en html, les grilles caymal )... mais des LinearLayout, qui eux s'adapteront à l'espace disponible...
    Ensuite dire à l'ImageButton d'utiliser cette place (avec weight)... et d'y centrer une image (FitXY). Attention toutefois l'image doit être sans bordure franche (sans haute fréquence quoi), sinon le resizing ne sera pas beau.

    Utiliser l'orientation pour définir la valeur primordiale (horizontal ou vertical).


    Mais je ne suis pas réellement sur que tu veuilles des ImageButton au départ... n'importe quelle view pouvant réagir au "click"... le ImageButton se spécialise en "stockant" des états (pressed/disabled...) permettant de gérer plusieurs images différentes en fonction de l'état justement.
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

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

Discussions similaires

  1. Réponses: 11
    Dernier message: 09/03/2007, 12h10
  2. Ecriture sur fichier texte non effectuée
    Par lodan dans le forum Langage
    Réponses: 4
    Dernier message: 20/02/2007, 09h20
  3. Update non effectué
    Par nellynew dans le forum Access
    Réponses: 1
    Dernier message: 13/09/2006, 12h37
  4. [Upload] Upload de wav et renommage non effectué
    Par PuppeT mAsTer dans le forum Langage
    Réponses: 4
    Dernier message: 17/07/2006, 18h22
  5. [JLabel] Redimensionnement auto non désiré
    Par SamRay1024 dans le forum Agents de placement/Fenêtres
    Réponses: 11
    Dernier message: 21/05/2004, 18h13

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