Intereting Posts
Добавить переход в AnimationDrawable Как создать индикатор выполнения, как изображение на Android Приложение Android сбой при установке Как открыть второе действие при нажатии кнопки в приложении для Android Я хочу, чтобы мой RecyclerView не перерабатывал некоторые элементы Проблемы с использованием SharedPreferences на службе (getPreferences не существует в службе) Совмещение панели инструментов с логотипом, заголовком, субтитрами на панели инструментов Как получить направление текста в Android и динамически менять раскладку в соответствии с направлением? Создание OnDragListener для Google Map v2 Фрагмент Завершите родительскую и текущую активность в Android Поиск доминирующего цвета изображения в Android @drawable Сжатие растровых изображений и оптимизация скорости в Android Android: проверка сети 3G или Wi-Fi включена или доступна или нет на устройстве Android Передача объекта из объекта в фрагмент Как проверить производительность приложения для Android?

Установите две кнопки одинаковой ширины независимо от размера экрана?

Хорошо, у меня есть две кнопки в линейном макете:

<LinearLayout android:id="@+id/linearLayout1" android:layout_height="wrap_content" android:layout_width="fill_parent"> <Button android:id="@+id/aktiviraj_paket" android:text="Aktiviraj" android:layout_height="40sp" android:layout_width="160sp" android:background="@drawable/my_border3" android:onClick="myClickHandle"></Button> <Button android:id="@+id/deaktiviraj_paket" android:text="Deaktiviraj" android:layout_height="40sp" android:layout_width="fill_parent" android:background="@drawable/my_border3" android:onClick="myClickHandle"> </Button> </LinearLayout> 

Так вот, если я использую fill parent на обеих кнопках, они один друг на друга, поэтому я сделал первую кнопку ширины 160sp, а второй – fill_parent. Если это показано на 4-дюймовом экране или меньше, кнопки имеют одинаковый размер, но если я попробую это на планшете (10 дюймов), первая кнопка останется шириной 160 с, а вторая растянется до конца экрана (потому что fill_parent). Могу ли я сделать это, так что обе кнопки могут быть даже размером, независимо от размера экрана?

Solutions Collecting From Web of "Установите две кнопки одинаковой ширины независимо от размера экрана?"

Используйте android:layout_weight="1" на обеих android:layout_weight="1" s. Установите android:layout_width="0dp" на обоих. Поскольку обе кнопки теперь имеют одинаковое взвешивание, теперь у каждой из них будет половина ширины родителя.

Вы можете узнать больше здесь: http://developer.android.com/guide/topics/ui/layout/linear.html

Если вы хотите сделать все кнопки шириной самой широкой кнопки, установка веса не будет делать это. Скорее всего, вы можете поместить все кнопки в TableLayout:

  <TableLayout android:layout_width="wrap_content" android:layout_height="wrap_content" > <TableRow android:layout_width="wrap_content" android:layout_height="wrap_content" > <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/short_text" /> </TableRow> <TableRow android:layout_width="wrap_content" android:layout_height="wrap_content" > <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/enter_manually" /> </TableRow> </TableLayout> 

В этом макете будут показаны две кнопки, одна поверх другой, одинаковая ширина.

 Display display=getWindowManager().getDefaultDisplay(); int width=display.getWidth(); btn1.setWidth(width/2); btn2.seTwidth(width/2); 

Установите что-нибудь в xml-файле, затем сначала найдите ширину устройства, затем установите ширину наполовину на обе кнопки. Теперь на каждом устройстве они будут выглядеть точно так же

Для каждой кнопки:

 android:layout_weight="0.5" android:layout_width="0dp" 
 android:layout_weight="0.5" android:layout_width="0dp 

работает

Установите android: layout_weight = "1" в компоновке. Линейный макет должен иметь android: ориентация установлена ​​как горизонтальная. И тогда внутренние кнопки должны иметь следующее:

андроид: layout_width = "0dp"

Android: layout_weight = "0.5"