Как выровнять включенный макет внутри ячейки GridLayout снизу? - PullRequest
0 голосов
/ 19 января 2019

Я использую GridLayout, и одно из моих представлений должно быть расположено в строке 1 столбца 2. Поэтому я сделал LinearLayout, который пуст. Внутри этого макета я хочу include несколько мини-макетов, что будет меняться динамически. Вот почему я решил включить их, а не размещать их статически. Проблема, с которой я сталкиваюсь - это расположение этих включенных макетов. Я хочу, чтобы все они были размещены в нижней части ячейки сетки. Таким образом, я установил android:layout_gravity="bottom", но это разрезало мой включенный макет пополам (видна только верхняя половина макета, нижняя - под краем ячейки сетки). Как сделать это правильно?

Эти макеты являются простыми макетами, содержащими ImageView и некоторые TextView. Это как автобусные ссылки со значком автобуса и номером ссылки. Таким образом, ячейка сетки будет состоять из различных включенных макетов. Иногда будет 2, иногда 5 и т. Д.

Единственное решение, которое я нашел, - это установить android:layout_marginBottom="12dp" для этого LinearLayout, и он подтолкнул эти включенные макеты вверх, чтобы они были полностью видны. Я не знаю, почему нижняя сила тяжести вытолкнула половину включенного макета из ячейки сетки.

Это мой LinearLayout:

<LinearLayout
                    android:id="@+id/line_specs"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="1"
                    android:layout_column="1"
                    android:layout_columnWeight="1"
                    android:layout_gravity="bottom"
                    android:orientation="horizontal">

                <include layout="@layout/link_walk_layout"/>

            </LinearLayout>

Изображение:

enter image description here

...