Как правильно установить размер кнопки в LinearLayer в Android?

83
11

У меня есть следующая проблема:

У меня есть горизонтальный LinearLayout с двумя кнопками, Ok и Cancel. Я хочу, чтобы кнопки заполняли родительскую ширину, я имею в виду каждую кнопку 50% (если бы у меня было 3 кнопки по 33% каждая), кнопки должны иметь одинаковую ширину, НО, когда я выбираю "заполнять родителя" в кнопке "ОК", он заполняет все и отменяет кнопка больше не отображается.

Ваша помощь приветствуется. большое спасибо

спросил(а) 2011-07-24T00:45:00+04:00 9 лет, 3 месяца назад
1
Решение
70

На макете xml добавьте этот тег к каждой кнопке:

android:layout_weight="1"

и установите кнопки widht на 0px

ответил(а) 2011-07-24T01:05:00+04:00 9 лет, 3 месяца назад
42

Используйте weightSum и layout_weight для создания желаемого вида.

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal"
android:weightSum="2">

<Button android:text="Ok" android:id="@+id/button1" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_weight="1" />
<Button android:text="Cancel" android:id="@+id/button2" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_weight="1" />

</LinearLayout>


В случае трех кнопок weightSum равно 3.

ответил(а) 2011-07-24T01:09:00+04:00 9 лет, 3 месяца назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема