Android, как разделить между двумя textview на всю ширину экрана ровно пятьдесят пятьдесят процентов?

У меня есть два TextView в RelativeLayout. Как настроить TextViews, если я хочу их всегда (другое разрешение экрана, например, 540×960), ширина каждого TextView составляет 50 процентов от полной ширины пользовательского интерфейса? Я бы установил размер как TextView всегда на 50 процентов от полной ширины пользовательского интерфейса. Необходимо растянуть TextViews на разных разрешениях экрана. Как я могу это сделать?

Вы можете попробовать использовать вес с созданием линейного макета в своем относительном макете, а затем установить android:layout_width="fill_parent" и android:weightSum = 2 и android:orientation="horizontal" , после этого разместите текстовое изображение внутри линейного макета И установите вес каждого текста 1.

 <RelativeLayout android:layout_width = "fill_parent" android:layout_height = "wrap_content"> <LinearLayout android:layout_width = "fill_parent" android:layout_height = "wrap_content" android:orientation="horizontal" android:weightSum = "2"> <TextView android:layout_width = "fill_parent" android:layout_height = "wrap_content" android:text = "YOUR FIRST TEXT" android:weight = "1" /> <TextView android:layout_width = "fill_parent" android:layout_height = "wrap_content" android:text = "YOUR SECOND TEXT" android:weight = "1" /> </LinearLayout> </RelativeLayout> 

Весовая сумма будет использована для измерения части текстового вида, например, если вы даете весовую сумму 3 и даете 1 textview weight = 2, а другой вес текста = 1, макет будет 2/3 (66,666%) и 1/3 ( 33.3333%), поэтому, если вы установите его 2 и укажите каждый вес текстового поля = 1, он должен быть 50% и 50%

Это работает для меня, если у вас есть какие-либо вопросы, не стесняйтесь спрашивать в комментарии 🙂

Всякий раз, когда вы разбиваете какое-то представление (Button, Text View) одинаково в горизонтальном / вертикальном

Android: weight Sum / android: layout_weight Использование техники …

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

Обязательно соблюдайте следующие правила:

1> set android: weight Сумма в линейную компоновку

2> set android: layout_width каждый ребенок Просмотр внутри "0dp"

3> set android: layout_weight each child Вид зависит от того, сколько child view & android: weight Sum (например: android: weight Sum = "2" и два дочерних представления, затем layout_weight = "1", layout_weight = "1")

Пример:

  <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:weightSum="2" > <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="child View 1" /> <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="child View 2"/> </LinearLayout> </RelativeLayout> 

Если ориентация макета вертикальная, тогда установите только андроид: layout_height«0dp» вместо android: layout_width

Установите layout_width для fill_parent как для TextView s, так и для тех же layout_weight и 1.0 и это должно сделать (или не дать ни одного layout_weight ).

Что-то вроде этого должно сделать трюк:

 <LinearLayout android:layout_width = "fill_parent" android:layout_height = "wrap_content" orientation = "horizontal"> <TextView android:layout_width = "fill_parent" android:layout_height = "wrap_content" android:text = "Text 1" /> <TextView android:layout_width = "fill_parent" android:layout_height = "wrap_content" android:text = "Text 2" /> </LinearLayout>