android: layout_gravity = "bottom" не работает - PullRequest
0 голосов
/ 26 декабря 2018

Я хочу использовать только LinearLayout и хочу разместить кнопку «СБРОС» внизу по центру.Но он не достигнет дна даже после использования android:layout_gravity="bottom|center_horizontal".

Я знаю, что использование RelativeLayout решит проблему, но я хочу, чтобы LinearLayout работал.

<?xml version="1.0" encoding="utf-8"?>`enter code here`
<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="16dp"
 tools:context="com.example.android.freestylewrestlingscorekeeperapp.MainActivity">

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

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:orientation="vertical"
            android:paddingRight="8dp">

            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="Player A"
                android:textAlignment="center"
                android:textSize="24sp" />

            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="0"
                android:textAlignment="center"
                android:textSize="48sp" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="+ 5 points"
                android:textAllCaps="true" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="+ 4 points"
                android:textAllCaps="true" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="+ 3 points"
                android:textAllCaps="true" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="+ 2 points"
                android:textAllCaps="true" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="+ 1 points"
                android:textAllCaps="true" />
        </LinearLayout>

        <view
            android:layout_width="1dp"
            android:layout_height="match_parent" />

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:orientation="vertical"
            android:paddingLeft="8dp">

            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="Player B"
                android:textAlignment="center"
                android:textSize="24dp" />

            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="0"
                android:textAlignment="center"
                android:textSize="48dp" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="+ 5 points"
                android:textAllCaps="true" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="+ 4 points"
                android:textAllCaps="true" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="+ 3 points"
                android:textAllCaps="true" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="+ 2 points"
                android:textAllCaps="true" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="+ 1 points"
                android:textAllCaps="true" />
        </LinearLayout>
    </LinearLayout>

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|center_horizontal"
        android:text="RESET" />
</LinearLayout>

В настоящее время кнопка «Сброс» расположена чуть ниже двух команд и находится в центре.Я хочу, чтобы он находился в внизу и в центре .

Пожалуйста, обратитесь к ссылке, чтобы узнать, как он отображается в настоящее время.

enter image description here

Ответы [ 2 ]

0 голосов
/ 27 декабря 2018

Ваш родительский линейный макет имеет ориентацию vertical, что означает, что он уже указывает свой дочерний макет по вертикали, поэтому значения top и bottom для layout_gravity не будут работать.Вы можете использовать это значение, только если у вас есть родительский линейный макет как horizontal.

Поскольку вы не хотите использовать относительный макет, ваш вариант будет match_parent ваш первый линейный макет и установите егоlayout_weight до 1layout_height до wrap_content для кнопки.

0 голосов
/ 27 декабря 2018

Просто добавьте родительский макет к кнопке.Я добавил LinearLayout и назначил android:layout_weight="1".

Ниже приведен код

<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="bottom|center_horizontal"
        android:orientation="horizontal">
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="RESET" />
    </LinearLayout>

Надеюсь, это работает!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...