Я ищу некоторые сведения о системе макетов. Кто-нибудь знает метод в системе макетов Android, который позволяет peer View
элементам (то есть представлениям, сгруппированным в одном контейнере) соответствовать их атрибутам высоты и ширины, не создавая промежуточный контейнер только для управления их размеры?
Например: макет имеет два элемента TextView
. Первый должен всегда переносить ширину к своему текстовому содержимому, но второй должен соответствовать ширине первого. Решение, которое работает, это:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/textOne"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/textTwo"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</LinearLayout>
</RelativeLayout>
Однако мне пришлось создать специальный контейнер для обоих видов, чтобы они оба соответствовали ширине любого текста в первом; добавляя ненужную сложность в иерархию. Я хотел бы знать, есть ли атрибут макета, который я мог бы использовать, чтобы сделать что-то вроде этого:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="@+id/textOne"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/textTwo"
android:layout_widthMatchPeer="@id/textOne" <!-- An attribute like this -->
android:layout_height="wrap_content"
android:layout_below="@id/textOne" />
</RelativeLayout>
Создание жесткого измерения, так как ширина побеждает цель дать возможность обернуть первичный элемент. Есть ли техника, о которой кто-то знает, или атрибут, который я пропустил, для достижения этой цели? Может быть в любой стандартной раскладке, я просто выбрал RelativeLayout
в качестве примера.
Кроме того, что если элементы не расположены рядом друг с другом?
Приветствие.