Как выделить элементы в LinearLayout?

Я хочу создать панель инструментов, которая выглядит так:

Введите описание изображения здесь

Как это сделать в XML? Вот как выглядит мое настоящее:

<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/toolbarLinearLayout" android:background="@color/solid_yellow"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/replyButton" android:text="Reply"></Button> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="RT" android:id="@+id/rtButton"></Button> <Button android:id="@+id/dmButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="DM"></Button> </LinearLayout> 

Похоже, вам может понадобиться атрибут дополнения LinearLayout, например

 android:padding="5dip" 

Чтобы каждый элемент занимал одинаковое пространство, используйте layout_weight, например

  <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/toolbarLinearLayout" android:background="@color/solid_yellow"> <Button android:layout_width="fill_parent" android:layout_weight="1" android:layout_height="wrap_content" android:id="@+id/replyButton" android:text="Reply"></Button> <Button android:layout_width="fill_parent" android:layout_weight="1" android:layout_height="wrap_content" android:text="RT" android:id="@+id/rtButton"></Button> <Button android:id="@+id/dmButton" android:layout_width="fill_parent" android:layout_weight="1" android:layout_height="wrap_content" android:text="DM"></Button> </LinearLayout> 

Пока все элементы имеют одинаковый вес, они должны занимать одно и то же место. Layout_width = "fill_parent" обеспечит заполнение всей строки.

Определите свою панель инструментов примерно так:

 <LinearLayout ...> <Button android:id="@+id/replyButton" android:layout_width="wrap_content" android:layout_height="wrap_content" ... /> <View android:layout_width="0dp" android:layout_height="fill_parent" android:layout_weight="1" /> <Button ... android:layout_width="wrap_content" android:layout_height="wrap_content" /> <!-- etc. --> </LinearLayout> 

Все дополнительное пространство будет выделено прозрачным представлениям между кнопками.

Добавьте android: layout_margin = «некоторое значение» для элемента в linearlayout. Это работало для меня.

Intereting Posts