Tengo un diseño simple para mi aplicación: (es mi primer ...;)) ingrese la descripción de la imagen aquí

Entonces, como puede ver, es solo un fondo y dos botones. (Hay 2 botones más en él, por el momento no son importantes)

Entonces, no tengo idea de cómo ponerlos uno al lado del otro, todo lo que hacen es estar uno encima del otro. Traté de peso, pero eso no funcionó.

Este es mi archivo axml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical"
    android:minWidth="25px"
    android:minHeight="25px"
    android:background="@drawable/background">
    <Button
        android:background="@drawable/startthehatching_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:id="@+id/StartButton" />
    <Button
        android:background="@drawable/stopthehatching_button"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:id="@+id/StopButton" />
    <CheckBox
        android:text="Pro Mode On"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/CheckBoxProMode" />
    <Button
        android:text="Help!"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/HelpButton" />
</LinearLayout>

¿Podría obtener ayuda? probablemente sea súper fácil, pero soy nuevo en esto :)

¡¡GRACIAS!!

-1
user7285912 24 abr. 2017 a las 19:17

3 respuestas

La mejor respuesta

1. Cree un diseño RelativeLayout como root. Como su diseño contiene bottom-center alineado Checkbox y Button, es mejor usar RelativeLayout como un diseño container/root.

2. Agregue un elemento secundario directo horizontal LinearLayout y este diseño contiene 2 elementos secundarios RelativeLayout y ambos tienen el mismo ancho.

3. Coloque el botón START y STOP en los respectivos RelativeLayout.

3. Agregar attribute android:layout_centerVertical="true" al botón START y STOP para alinear vertically dentro del niño RelativeLayout

4. Agrega two fondo diferente color a two niño RelativeLayout en lugar de usar fondo image al diseño root .

FYI , como usé dos RelativeLayout's para dos partes, es mejor usar el fondo color en lugar de usar image.

Pruebe esto:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal"
        android:weightSum="2">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="#16A25B"
            android:layout_weight="1"
            android:padding="20dp">

            <Button
                android:id="@+id/StartButton"
                android:layout_width="180dp"
                android:layout_height="180dp"
                android:layout_centerVertical="true"
                android:background="@drawable/startthehatching_button" />

        </RelativeLayout>

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="#16909D"
            android:layout_weight="1"
            android:padding="20dp">

            <Button
                android:id="@+id/StopButton"
                android:layout_width="180dp"
                android:layout_height="180dp"
                android:layout_centerVertical="true"
                android:background="@drawable/stopthehatching_button" />

        </RelativeLayout>
    </LinearLayout>

    <Button
        android:id="@+id/HelpButton"
        android:text="Help!"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="20dp" />

    <CheckBox
        android:id="@+id/CheckBoxProMode"
        android:text="Pro Mode On"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_above="@id/HelpButton"
        android:layout_marginBottom="8dp"
        android:textColor="@android:color/white" />
</RelativeLayout>

Para su información, debe definir el height-weight de Button en diferentes dimens.xml para que todos resolutions se muestren exactamente igual en todos los dispositivos diferentes.

SALIDA:

enter image description here

Espero que esto ayude ~

1
Ferdous Ahamed 26 abr. 2017 a las 15:51
 this code help you!!!

    <?xml version="1.0" encoding="utf-8"?>
        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/LinearLayout1"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:gravity="center"
            android:orientation="vertical"
            android:minWidth="25px"
            android:minHeight="25px"
            android:background="@drawable/background">
        <LinearLayout 
         android:layout_width="match_parent"
            android:layout_height="match_parent"
           android:weightSum="2"
            android:orientation="horizontal">

            <Button
                android:background="@drawable/startthehatching_button"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:id="@+id/StartButton" />
            <Button
                android:background="@drawable/stopthehatching_button"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:id="@+id/StopButton" />
           </LinearLayout>
           <LinearLayout 
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:weightSum="2"
            android:orientation="horizontal">
             <CheckBox
             android:text="Pro Mode On"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
             android:layout_weight="1"
             android:id="@+id/CheckBoxProMode" />
            <Button
             android:text="Help!"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
             android:layout_weight="1"
             android:id="@+id/HelpButton" />

            </LinearLayout>
        </LinearLayout>
0
iamkdblue 24 abr. 2017 a las 17:03

Cambia la orientación a horizontal y haz que sea 0dp

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/background"
    android:gravity="center"
    android:minHeight="25px"
    android:minWidth="25px"
    android:orientation="vertical">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal"
        android:weightSum="2">

        <FrameLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1">

            <Button
                android:id="@+id/StartButton"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:background="@drawable/startthehatching_button" />
        </FrameLayout>

        <FrameLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1">

            <Button
                android:id="@+id/StopButton"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"

                android:background="@drawable/stopthehatching_button" />
        </FrameLayout>
    </LinearLayout>
</LinearLayout>
0
Ilya Gazman 24 abr. 2017 a las 16:59