Android – 3-строчная раскладка столбцов – как мне заставить ее занимать процент экрана?

У меня этот макет с жестко-кодированной шириной:

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:paddingTop="4dip" android:paddingBottom="6dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textSize="13sp" android:weightSum="1.0"> <TextView android:id="@+id/TRAIN_CELL" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight=".60"/> <TextView android:id="@+id/FROM_CELL" android:layout_width="0dp" android:textSize="20sp" android:textStyle="bold" android:gravity="center" android:textColor="@color/light_best_blue" android:layout_height="wrap_content" android:layout_weight=".20"/> <TextView android:id="@+id/TO_CELL" android:layout_width="0dp" android:textSize="20sp" android:textStyle="bold" android:gravity="center" android:layout_weight=".20" android:textColor="@color/light_best_blue" android:layout_height="wrap_content" /> </LinearLayout> 

Но есть ли способ дать каждому столбцу процент от ширины?

Благодаря!

использование

 layout_width="0dp" layout_weight="x" 

Где x – ваш процент по каждому элементу. См. http://developer.android.com/guide/topics/ui/layout/linear.html

Вы атрибут веса и ширина как 0dp и укажите weightSum в родительском.

В вашем случае установите андроид: weightSum линейного макета, чтобы сказать 1 и разделите этот вес среди детей, скажем 0,3, 0,3 и 0,4. (Android: layout_weight = "0.3").

РЕДАКТИРОВАТЬ:

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:paddingTop="4dip" android:paddingBottom="6dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textSize="13sp" android:weightSum="1.0" android:orientation="horizontal"> <TextView android:id="@+id/TRAIN_CELL" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight=".60"/> <TextView android:id="@+id/FROM_CELL" android:layout_width="0dp" android:textSize="20sp" android:textStyle="bold" android:gravity="center" android:layout_height="wrap_content" android:layout_weight=".20"/> <TextView android:id="@+id/TO_CELL" android:layout_width="0dp" android:textSize="20sp" android:textStyle="bold" android:gravity="center" android:layout_weight=".20" android:layout_height="wrap_content" /> </LinearLayout> . <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:paddingTop="4dip" android:paddingBottom="6dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textSize="13sp" android:weightSum="1.0" android:orientation="horizontal"> <TextView android:id="@+id/TRAIN_CELL" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight=".60"/> <TextView android:id="@+id/FROM_CELL" android:layout_width="0dp" android:textSize="20sp" android:textStyle="bold" android:gravity="center" android:layout_height="wrap_content" android:layout_weight=".20"/> <TextView android:id="@+id/TO_CELL" android:layout_width="0dp" android:textSize="20sp" android:textStyle="bold" android:gravity="center" android:layout_weight=".20" android:layout_height="wrap_content" /> </LinearLayout> . <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:paddingTop="4dip" android:paddingBottom="6dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textSize="13sp" android:weightSum="1.0" android:orientation="horizontal"> <TextView android:id="@+id/TRAIN_CELL" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight=".60"/> <TextView android:id="@+id/FROM_CELL" android:layout_width="0dp" android:textSize="20sp" android:textStyle="bold" android:gravity="center" android:layout_height="wrap_content" android:layout_weight=".20"/> <TextView android:id="@+id/TO_CELL" android:layout_width="0dp" android:textSize="20sp" android:textStyle="bold" android:gravity="center" android:layout_weight=".20" android:layout_height="wrap_content" /> </LinearLayout> 

Этот пост похож на этот пост.
Вы можете создать каждую ширину столбца до требуемой ширины в процентах
Проверьте этот экран мер Android в процентах