web-dev-qa-db-fra.com

Bouton central dans LinearLayout

J'ai cette mise en page:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:orientation="vertical" >

<LinearLayout
    Android:layout_width="fill_parent"
    Android:layout_height="wrap_content"
    Android:layout_weight="1"
    Android:background="@Android:color/darker_gray"
    Android:orientation="horizontal" >

    <TextView
        Android:id="@+id/mon"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="10"
        Android:text="M\nO\nN" />

    <CheckBox
        Android:id="@+id/cbmon"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="10" />

    <TimePicker
        Android:id="@+id/timePicker1mon"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="40" />

    <TimePicker
        Android:id="@+id/timePicker2mon"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="40" />
</LinearLayout>

<LinearLayout
    Android:layout_width="fill_parent"
    Android:layout_height="wrap_content"
    Android:layout_weight="1"
    Android:background="@Android:color/white"
    Android:orientation="horizontal" >

    <TextView
        Android:id="@+id/mon"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="10"
        Android:text="T\nU\nE" />

    <CheckBox
        Android:id="@+id/cbtue"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="10" />

    <TimePicker
        Android:id="@+id/timePicker1tue"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="40" />

    <TimePicker
        Android:id="@+id/timePicker2tues"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="40" />
</LinearLayout>

<LinearLayout
    Android:layout_width="fill_parent"
    Android:layout_height="wrap_content"
    Android:layout_weight="1"
    Android:background="@Android:color/darker_gray"
    Android:orientation="horizontal" >

    <TextView
        Android:id="@+id/mon"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="10"
        Android:text="W\nE\nD" />

    <CheckBox
        Android:id="@+id/cbwed"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="10" />

    <TimePicker
        Android:id="@+id/timePicker1wed"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="40" />

    <TimePicker
        Android:id="@+id/timePicker2wed"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="40" />
</LinearLayout>

<LinearLayout
    Android:layout_width="fill_parent"
    Android:layout_height="wrap_content"
    Android:layout_weight="1"
    Android:background="@Android:color/white"
    Android:orientation="horizontal" >

    <TextView
        Android:id="@+id/mon"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="10"
        Android:text="T\nH\nU" />

    <CheckBox
        Android:id="@+id/cbthu"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="10" />

    <TimePicker
        Android:id="@+id/timePicker1thu"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="40" />

    <TimePicker
        Android:id="@+id/timePicker2thu"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="40" />
</LinearLayout>

<LinearLayout
    Android:layout_width="fill_parent"
    Android:layout_height="wrap_content"
    Android:layout_weight="1"
    Android:background="@Android:color/darker_gray"
    Android:orientation="horizontal" >

    <TextView
        Android:id="@+id/mon"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="10"
        Android:text="F\nR\nI" />

    <CheckBox
        Android:id="@+id/cbfri"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="10" />

    <TimePicker
        Android:id="@+id/timePicker1fri"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="40" />

    <TimePicker
        Android:id="@+id/timePicker2fri"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="40" />
</LinearLayout>

<LinearLayout
    Android:layout_width="fill_parent"
    Android:layout_height="wrap_content"
    Android:layout_weight="1"
    Android:background="@Android:color/white"
    Android:orientation="horizontal" >

    <TextView
        Android:id="@+id/mon"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="10"
        Android:text="S\nA\nT" />

    <CheckBox
        Android:id="@+id/cbsat"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="10" />

    <TimePicker
        Android:id="@+id/timePicker1sat"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="40" />

    <TimePicker
        Android:id="@+id/timePicker2sat"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="40" />
</LinearLayout>

<LinearLayout
    Android:layout_width="fill_parent"
    Android:layout_height="wrap_content"
    Android:layout_weight="1"
    Android:background="@Android:color/darker_gray"
    Android:orientation="horizontal" >

    <TextView
        Android:id="@+id/mon"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="10"
        Android:text="S\nU\nN" />

    <CheckBox
        Android:id="@+id/cbsun"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="10" />

    <TimePicker
        Android:id="@+id/timePicker1Sun"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="40" />

    <TimePicker
        Android:id="@+id/timePicker2Sun"
        Android:layout_width="wrap_content"
        Android:layout_height="fill_parent"
        Android:layout_weight="40" />
</LinearLayout>

<LinearLayout
    Android:layout_width="fill_parent"
    Android:layout_height="wrap_content"
    Android:layout_weight="1"
    Android:background="@Android:color/white"
    Android:orientation="horizontal" >

    <Button
        Android:id="@+id/okbutton"
        Android:layout_width="wrap_content"
        Android:layout_height="300dp"
        Android:text="SET"
        Android:gravity="center"
        Android:textSize="50sp" />

</LinearLayout>

POURQUOI ai-je ce résultat ??? Je m'attendrais à ce que le bouton "SET" soit centré horizontalement:

enter image description here

15
Lisa Anne

Réglez la gravité de la disposition linéaire du bouton sur le centre

  <LinearLayout
    Android:layout_width="fill_parent"
    Android:layout_height="wrap_content"
    Android:layout_weight="1"
    Android:background="@Android:color/white"
    Android:orientation="horizontal"
    Android:gravity="center">

    <Button
        Android:id="@+id/okbutton"
        Android:layout_width="wrap_content"
        Android:layout_height="300dp"
        Android:text="SET"
        Android:gravity="center"
        Android:textSize="50sp" />

</LinearLayout>  
28
kaushal trivedi

Essayez avec Android: layout_gravity

<Button
        Android:id="@+id/okbutton"
        Android:layout_width="wrap_content"
        Android:layout_height="300dp"
        Android:text="SET"
        Android:gravity="center"
        Android:layout_gravity="center_horizontal"
        Android:textSize="50sp" />

Regardez aussi cette discussion: Gravity et layout_gravity sur Android

13
Wand Maker
   <ImageButton
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    Android:id="@+id/SettingsButton"
    Android:src="@drawable/settings_button"
    Android:gravity="center"
    Android:layout_alignParentTop="true"
    Android:layout_centerHorizontal="true"
    Android:layout_marginTop="48dp" />
1
sam