пользовательский диалог Android с кнопками одинакового размера - PullRequest
1 голос
/ 10 апреля 2011

Я написал свой собственный таймер, отображаемый в пользовательском диалоге.Я использовал TableLayout и layout_weight = "1", чтобы получить шаблон сетки, содержащий 9 одинаковых по размеру виджетов Button и EditText (эта часть отлично работает).Внизу я хочу, чтобы кнопки «ОК» и «Отмена» имели одинаковую ширину, занимая примерно половину ширины диалога.Я пробовал layout_width = "1", но размеры кнопок не совпадают, но они достаточно близки.Это не так уж и плохо, за исключением случаев, когда экран находится в альбомной ориентации, кнопки отображаются по левому краю, без каких-либо отступов вокруг текста.Есть предложения?

Ответы [ 2 ]

3 голосов
/ 10 апреля 2011

Mike

У меня есть нечто подобное в одном из моих приложений, вот код, который должен дать вам то, что вы ищете, просто поместите это в существующий диалог ...

        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/ButtonGroup"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_below="@id/DialogText"
            android:orientation="horizontal">

            <Button android:id="@+id/dialogOkButton" 
                android:layout_width="0dip"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="@string/lblSet"/>

            <Button android:id="@+id/dialogCancelButton" 
                android:layout_width="0dip"
                android:layout_height="wrap_content" 
                android:layout_weight="1"
                android:text="@string/lblCancel"/>
        </LinearLayout>

LinearLayout - это то, что заставляет его растягиваться через родительское представление. Пожалуйста, имейте в виду, что вам нужно поместить это в ваш макет, чтобы LinearLayout был в вашем макете. Я немного устал, извините, если я болтаю: -P

1 голос
/ 10 апреля 2011

Обычно я делаю что-то похожее на то, что предлагал Джаред, но на кнопках устанавливаю layout_width = "fill_parent" и layout_weight = "0.5".Если вы хотите, чтобы одна из кнопок была длиннее другой, установите ее вес равным 0,3, а другой - 0,7

.
...