Intereting Posts
Как создать кнопки с равными ширинами? PhoneGap Android получит код версии приложения Автоматически регистрировать события жизненного цикла Android с помощью ActivityLifecycleCallbacks? Как получить номер сборки / версии вашего приложения для Android? Android MediaPlayer занимает много времени для подготовки и буферизации Требуется аннотирование HTTP-аннотации модификации 2 (например, @GET, @POST и т. Д.). API Android, чтобы проверить, активен ли вызов или приостановлен (Re) установка SD-карты на эмулятор Android Как отображать значок и название действия в ActionBar? Аннотации уровня API Android для Android-библиотек Как использовать onResume ()? Как избежать ограничения на использование 65k при использовании сервисов Google Play Для вызова требуется уровень API 11 (текущий мин равен 1) Отправка почты в андроид без использования SMTP Как получить название города по широте и долготе в андроиде?

Android: создание двух столбцов в линейном режиме

<LinearLayout android:id="@+id/linearLayout1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="vertical" > <LinearLayout android:id="@+id/linearLayout2" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Street" android:layout_gravity="left"/> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="456546546" android:layout_gravity="right" /> </LinearLayout> </LinearLayout> 

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

Solutions Collecting From Web of "Android: создание двух столбцов в линейном режиме"

Вы должны использовать атрибут android:layout_weight . Вот пример:

 <LinearLayout android:id="@+id/linearLayout2" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <TextView android:id="@+id/textView1" android:layout_width="0dp" android:layout_weight="1" android:layout_height="wrap_content" android:text="Street" android:layout_gravity="left" android:background="#88FF0000"/> <TextView android:id="@+id/textView2" android:layout_width="0dp" android:layout_weight="1" android:layout_height="wrap_content" android:text="456546546" android:layout_gravity="right" android:background="#8800FF00"/> </LinearLayout> 

Введите описание изображения здесь

Да, это сбивает с толку. Несмотря на то, что ширина LinearLayout установлена ​​на fill_parent, она по-прежнему требует минимальной ширины. Вам нужно установить второй TextView для заполнения_parent, а затем его силу тяжести вправо:

 <LinearLayout android:id="@+id/linearLayout2" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Street"/> <TextView android:id="@+id/textView2" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="456546546" android:gravity="right" /> </LinearLayout> 

Если u хочет иметь несколько строк в каждом столбце, вы можете использовать макет таблицы

Надеюсь, это поможет вам.

Попробуйте этот код.

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal"> <LinearLayout android:layout_width="wrap_content" android:layout_height="match_parent" android:background="#00FF00" android:paddingRight="90dp" android:orientation="vertical" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/b1" android:text="Button 1"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:background="#FF00FF" android:orientation="vertical" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/b2" android:text="Button 2"/> </LinearLayout> </LinearLayout> 

И если вам нужен промежуток между кнопками:

 <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="0.95" android:text="Via SMS" /> <View android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="0.05" /> <Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="0.95" android:text="Diaporama" /> </LinearLayout> 

При выполнении этой таблицы попробуйте использовать таблицу. В графическом макете Перетащите таблицу, поместите элементы в ячейку.

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

Ссылка изменилась с @ santhosh-shettigar.
Guide: https://developer.android.com/guide/topics/ui/layout/grid.html
Ссылка: http://developer.android.com/reference/android/widget/TableLayout.html