Diverses questions de débutant

  • Auteur de la discussion erasorz
  • Date de début
E

erasorz

Membre
Inscrit
25 Novembre 2014
Messages
2
Points
0
  • #1
Bonjour à tous,

J'espère avoir frappé à la bonne porte tongue
Je suis un newb sur le dev Android, mais j'ai déjà utilisé de nombreuses autres technos/langages donc j'ai bon espoir d'arriver à quelque-chose :)

Ma première appli (un clone de boulderdash, ce qui devrait permettre de balayer beaucoup de thèmes de dev) est initiée et pour l'instant j'ai des questions sur l'agencement des layouts.

Voici ce que je cherche à faire :



J'ai réussi à faire ce que je voulais pour que la zone GAME utilise toute la place dispo au-dessus de la zone PANEL en utilisant RelativeLayout plutot que LinearLayout. En revanche je sêche sur le PANEL où je voudrais la zone ARROWS au milieu et les 2 autres zones de part et d'autre, utilisant toute la place dispo.

Voici le résultat :




Voici le code :

Code:
S'il vous plaît, Connexion ou S'inscrire to view codes content!



NB : au passage, autant avoir d'entrée de bonnes habitudes : s'il y a des conventions, règles, conseils, bonnes pratiques dans le codage de MAIN.XML, je suis prenneur. :vieux-smiley:

D'avance merci.
 
Skelett

Skelett

Moderateur Global
Inscrit
12 Mai 2013
Messages
15 222
Points
113
  • #2
Yo !

De tête, essayes plutôt comme ça pour centrer tes 4 boutons (En rouge ce que tu dois enlever et en bleu ce que tu dois rajouter) :

<!--layout2.2.1-TOPARROWS-begin-->
<LinearLayout
android:id="@+id/layout2_1_1_toparrows"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:eek:rientation="vertical"
android:layout_gravity="center">

<Button
android:id="@+id/button_up"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="H" />

</LinearLayout>
<!--layout2.2.1-TOPARROWS-end-->

<!--layout2.2.2-BOTTOMARROWS-begin-->
<LinearLayout
android:id="@+id/layout2_1_2_bottomarrows"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:eek:rientation="horizontal">

<Button
android:id="@+id/button_left"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="G" />

<Button
android:id="@+id/button_bottom"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="B" />

<Button
android:id="@+id/button_right"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="D" />

</LinearLayout>
<!--layout2.2.2-BOTTOMARROWS-end-->
 
E

erasorz

Membre
Inscrit
25 Novembre 2014
Messages
2
Points
0
  • #3
Merci de ta réponse.

En faisant tes modifs, ça ne change pas, le bouton [H] se retrouve d'ailleurs au dessus du [G].
Pour les objets de layer ARROWS le placement est bon.

En fait c'est tout le bloc ARROWS qui doit être centré sur l'écran, du coup j'ai changé le layout_gravity pour TOUT le bloc ARROWS en center (qui était d'ailleurs à left par erreur), mais ça ne change rien.

Code:
S'il vous plaît, Connexion ou S'inscrire to view codes content!

Faudrait peut-être changer le layer PANEL en relativeLayer et préciser le placement des 3 sous-layers, les unes par rapport aux autres ?
J'avais essayé quelque chose dans ce sens, mais sans succès..
 
Skelett

Skelett

Moderateur Global
Inscrit
12 Mai 2013
Messages
15 222
Points
113
  • #4
Vu comme ça, je suis d'accord.

Mais avant de répondre à
erasorz a dit:
Faudrait peut-être changer le layer PANEL en relativeLayer et préciser le placement des 3 sous-layers, les unes par rapport aux autre ?
J'avais essayé quelque chose dans ce sens, mais sans succès..
j'aimerais d'abord savoir pourquoi ne pas avoir défini la position de SCORE sur left ?

Code:
S'il vous plaît, Connexion ou S'inscrire to view codes content!

Tu l'as fait pour ARROW et TIMER mais pas lui.
 

Sujets en relation

Haut Bas