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 :

Ajout d'un bouton sur une vue "Canvas"


Sujet :

Composants graphiques Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Linio
    Inscrit en
    Octobre 2005
    Messages
    431
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 431
    Par défaut Ajout d'un bouton sur une vue "Canvas"
    Bonjour.

    Je travaille actuellement sur une application sur laquelle j'ai créé une surclasse de View pour gérer des actions utilisateurs etc...
    Cette fonction surcharge la fonction onDraw pour les traitements.

    Je me contentais donc de faire un SetContentView(MaClasse) au niveau de mon activité. Maintenant j'aimerais ajouter une série de boutons en bas de mon écran lors d'une action utilisateur. J'ai commencé par les afficher "tout le temps", mais là c'est le drame, impossible de les positionner comme j'aimerais.

    J'ai créé une RelativeLayout dans laquelle je rajoute ma vue et mes boutons, mais je ne trouve pas le moyen de positionner ceux ci en bas de mon écran au dessus de ma vue dessinée en 2D. J'ai vu certains éléments qui semblent pouvoir le faire en passant par un layout XML (layout:align_...), mais si je créé une vue générique dans celui-ci je ne peux pas la "remplacer" par ma classe (je ne peux faire qu'un getViewById, et là je ne suis pas bien avancé).

    Donc le mieux que j'ai pu faire au final c'est ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    RelativeLayout container = new RelativeLayout(this);
     
            Button button = new Button(this);
            button.setText("TEST");
     
            Button button2 = new Button(this);
            button.setText("TEST2");
     
            container.addView(mavue);
            container.addView(button);
            container.addView(button2);
     
            setContentView(container);
    Mais donc les boutons sont en haut à gauche, et non pas du tout en bas...

    Une idée?

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 182
    Par défaut
    Tu peux utiliser la méthode setGravity sous la forme

    relativelayout.setGravity(ALIGN_BOTTOM);

    Ca devrait marcher

  3. #3
    Membre éclairé Avatar de Linio
    Inscrit en
    Octobre 2005
    Messages
    431
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 431
    Par défaut
    Avait déjà essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    container.setGravity(RelativeLayout.ALIGN_BOTTOM);
    Ainsi que :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    button.setGravity(RelativeLayout.ALIGN_BOTTOM);

    Ca ne fonctionne pas.
    D'autres pistes?

  4. #4
    Membre éclairé Avatar de Linio
    Inscrit en
    Octobre 2005
    Messages
    431
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 431
    Par défaut
    Je suis rassuré de voir que mon soucis n'a pas une réponse triviale.

    J'ai du mal à comprendre par contre pourquoi les graphismes n'ont pas été pensés comme Swing ou AWT pour Android. Les choix d'implémentation des layout me semble assez approximative non?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 60
    Par défaut
    Il faut ajouter les boutons directement dans le Layout :

    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
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
    	<taViewPersonnalisée 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:id="@+id/MV"
        />
     
        <RelativeLayout
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content"
        android:id="@+id/linearLayoutMenu"
        android:layout_below="@+id/MV">
     
        	<Button
        	android:layout_width="wrap_content" 
        	android:layout_height="wrap_content"
        	android:id="@+id/btn1"
        	android:text="@string/1">
        	</Button>
        	<Button
        	android:layout_width="fill_parent" 
        	android:layout_height="wrap_content"
        	android:id="@+id/btn2"
        	android:text="@string/2"
        	android:layout_below="@+id/btn1">
        	</Button>
        </RelativeLayout>
     
    </LinearLayout>

  6. #6
    Membre éclairé Avatar de Linio
    Inscrit en
    Octobre 2005
    Messages
    431
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 431
    Par défaut
    J'avais pensé à une méthode comme ça, mais comment je fais pour "remplacer" la vue MV par la mienne.

    Je ne peux faire qu'un searchById et après je ne peux pas modifier l'objet si?

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

Discussions similaires

  1. Ajouter un bouton sur une page d'un projet de macro complémentaire
    Par jpclabaux dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 07/11/2012, 20h41
  2. [FLEX] Ajouter un bouton sur une image
    Par miya dans le forum MXML
    Réponses: 2
    Dernier message: 02/03/2009, 17h29
  3. Réponses: 11
    Dernier message: 28/01/2006, 20h52

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