Je viens de constater que je ne peux pas supprimer l’espace entre 2 boutons même si je règle les layout_marginRight
et layout_marginLeft
comme ci-dessous. Mais il est logique de définir un espace plus grand, tel que 10 dp. Un moyen de le résoudre?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="fill_parent"
Android:orientation="horizontal" Android:padding="0dp"
Android:layout_height="wrap_content" Android:gravity="fill_horizontal" Android:layout_margin="0dp">
<Button Android:id="@+id/LocationTitleButton"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginRight="0dp"
Android:layout_gravity="center_vertical"
Android:layout_weight="1"
Android:ellipsize="end"
Android:gravity="center_vertical"
Android:scrollHorizontally="true"
Android:singleLine="true"
Android:text="Add location"
Android:textStyle="bold" />
<Button Android:textColor="#FF000000"
Android:layout_weight="0"
Android:id="@+id/AddLocationButton"
Android:text="Search"
Android:gravity="center_vertical"
Android:layout_gravity="center_vertical"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginLeft="0dp" />
</LinearLayout>
Veuillez regarder la réponse de Bryan . Avec ma réponse, les deux boutons se chevauchent. La réponse de Bryans indique la taille réelle des boutons.
Il suffit de définir le Android:layout_marginRight
du premier bouton sur "-8dip"
ou même plus. Ensuite, l’espace entre les deux boutons sera plus petit.
Essayez de changer la couleur du bouton, car l'interface par défaut du bouton, qui est natif d'Android, est en fait plus petite que sa taille et ajustée au centre pour lui donner un aspect cool.
Changer son fond en noir ou quelque chose et vous verrez la taille réelle du bouton.
Android:background="#000"
Vous pouvez passer à RelativeLayout
. Il n'y a pas d'espacement dans cette mise en page.
Vous devrez définir Android:layout_marginRight="0dip"
et vous devrez supprimer le remplissage avec Android:paddingRight="0dip"
pour l'autre bouton, il faudra modifier les valeurs de gauche. Je suppose que vous avez oublié que chaque élément Android a généralement un remplissage ajouté par défaut. C’est généralement une bonne idée, mais si vous souhaitez la supprimer, c’est la solution.
Je pense que vous pouvez vous débarrasser de l'espace si vous utilisez plutôt TableLayout. Et vous pouvez définir des valeurs négatives pour la marge, si elle ajoute encore de l'espace par défaut entre elles.
Utilisez "layout_marginLeft" & "layout_marginRigh" pour remplir le bouton d'arrière-plan
<LinearLayout
Android:layout_width="fill_parent"
Android:layout_height="0dp"
Android:layout_weight="1"
Android:gravity="bottom"
Android:orientation="horizontal" >
<Button
Android:id="@+id/imageButton1"
Android:layout_width="0dp"
Android:layout_height="match_parent"
Android:layout_marginBottom="-5dp"
Android:layout_marginLeft="-3dp"
Android:layout_marginRight="-4dp"
Android:layout_weight="1"
Android:drawableTop="@drawable/create_mail" />
<Button
Android:id="@+id/bItem"
Android:layout_width="0dp"
Android:layout_height="match_parent"
Android:layout_marginBottom="-5dp"
Android:layout_marginLeft="-4dp"
Android:layout_marginRight="-4dp"
Android:layout_weight="1"
Android:drawableTop="@drawable/email_receive3"
Android:onClick="OnClick"
Android:text="@string/inbox" />
<Button
Android:id="@+id/imageButton2"
Android:layout_width="0dp"
Android:layout_height="match_parent"
Android:layout_marginBottom="-5dp"
Android:layout_marginLeft="-4dp"
Android:layout_marginRight="-3dp"
Android:layout_weight="1"
Android:drawableTop="@drawable/email_trash" />
</LinearLayout>