Я начинаю с Android. У меня проблемы с получением простого макета.
Я хотел бы использовать LinearLayout
для позиционирования два TextViews
в одном ряду. Один TextView
слева, другой справа (аналогично float: left, float: right в CSS).
Возможно ли это, или мне нужно использовать другую ViewGroup
или дополнительную раскладку макета для этого?
Вот что у меня так далеко:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:orientation="horizontal" android:padding="10sp">
<TextView android:id="@+id/mytextview1" android:layout_height="wrap_content" android:text="somestringontheleftSomestring" android:layout_width="wrap_content"/>
<TextView android:id="@+id/mytextview2" android:layout_height="wrap_content" android:ellipsize="end"
android:text="somestringontheright" android:layout_width="wrap_content"/>
</LinearLayout>
Вы можете использовать свойство gravity, чтобы «плавать» представления.
источник
Это можно сделать с помощью
LinearLayout
(меньше накладных расходов и больше контроля, чем у параметра Relative Layout). Дайте второму виду оставшееся пространство, чтобыgravity
можно было работать. Проверено на API 16.Если вы хотите ограничить размер первого текстового представления, сделайте это:
Отрегулируйте веса по мере необходимости. Относительная компоновка не позволит вам установить процентный вес, как этот, только фиксированный дп одного из представлений
источник
Даже с советами Rollin_s ответ Дэйва Уэбба не сработал для меня. Текст справа
TextView
все еще перекрывал текст слеваTextView
.В конце концов я получил то поведение, которое хотел, примерно так:
Обратите внимание, что mytextview2
"android:layout_width"
установлен как"match_parent"
.Надеюсь, это поможет кому-то!
источник
источник
В случае, если вы хотите, чтобы левый и правый элементы переносили содержимое, но имели средний пробел
источник
Есть много других способов сделать это, я бы сделал что-то подобное.
источник
Ответ Дэйва Уэбба сработал для меня. Спасибо! Вот мой код, надеюсь, это кому-нибудь поможет!
Изображение: Изображение
источник
Этот Кодекс Разделит контроль на две равные стороны.
источник