2013-09-21 4 views
0

Я пытаюсь использовать layout_weight в линейной компоновке, но он не настраивает правильную компоновку. Все смешивается. Недостаток в нем не присутствует в каждом текстовом виде. Пожалуйста, помогите мне исправить это ,Использовать layout_weight в линейной компоновке Android

XML

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/mainResultLayout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:gravity="center" 
    android:baselineAligned="false" 
    android:orientation="horizontal" > 

    <LinearLayout 
    android:id="@+id/linearLayout2" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" > 

    <TextView 
     android:id="@+id/request_date" 
     android:layout_width="0dp" 
     android:layout_weight="1" 
     android:layout_height="wrap_content" 
     android:text="25 Sep 2013 | 09:45" 
     android:layout_gravity="left"/> 

    <TextView 
     android:id="@+id/approval_id" 
     android:layout_width="0dp" 
     android:layout_weight="1" 
     android:layout_height="wrap_content" 
     android:text="XXXXXXXX" 
     android:layout_gravity="right" 
     /> 
    <TextView 
     android:id="@+id/trip_date" 
     android:layout_width="0dp" 
     android:layout_weight="1" 
     android:layout_height="wrap_content" 
     android:text="25 Sep 2013" 
     android:layout_gravity="right" 
     /> 

    <TextView 
     android:id="@+id/trip_id" 
     android:layout_width="0dp" 
     android:layout_weight="1" 
     android:layout_height="wrap_content" 
     android:text="XXXXXXXXXX" 
     android:layout_gravity="right" 
     /> 
    <TextView 
     android:id="@+id/approval_status" 
     android:layout_width="0dp" 
     android:layout_weight="1" 
     android:layout_height="wrap_content" 
     android:text="Waiting" 
     android:layout_gravity="right" 
     /> 

</LinearLayout> 

</LinearLayout> 

Так, пожалуйста, помогите решить эту проблему будет спасибо вам полным ..

ответ

0
<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/mainResultLayout" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:baselineAligned="false" 
android:gravity="center" 
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/request_date" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center|left" 
     android:layout_weight="1" 
     android:singleLine="true" 
     android:text="25 Sep 2013 | 09:45" /> 

    <TextView 
     android:id="@+id/approval_id" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center|left" 
     android:layout_weight="1" 
     android:singleLine="true" 
     android:text="XXXXXXXX" /> 

    <TextView 
     android:id="@+id/trip_date" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center|left" 
     android:layout_weight="1" 
     android:singleLine="true" 
     android:text="25 Sep 2013" /> 

    <TextView 
     android:id="@+id/trip_id" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center|left" 
     android:layout_weight="1" 
     android:text="XXXXXXXXXX" /> 

    <TextView 
     android:id="@+id/approval_status" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center|left" 
     android:layout_weight="1" 
     android:text="Waiting" /> 
</LinearLayout> 

0

Попробуйте с андроида: layout_width = "match_perent" в каждом свойстве TextView

0

Изменить * android: layout_width = "0dp" * с * android: layout_height = "wrap_content" * или * android: layout_height = "wrap_content" *.

<?xml version="1.0" encoding="utf-8"?> 

<LinearLayout 
    android:id="@+id/linearLayout2" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" > 

<TextView 
    android:id="@+id/request_date" 
    android:layout_width="wrap_content" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:text="25 Sep 2013 | 09:45" 
    android:layout_gravity="left"/> 

<TextView 
    android:id="@+id/approval_id" 
    android:layout_width="wrap_content" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:text="XXXXXXXX" 
    android:layout_gravity="right" 
    /> 
<TextView 
    android:id="@+id/trip_date" 
    android:layout_width="wrap_content" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:text="25 Sep 2013" 
    android:layout_gravity="right" 
    /> 

<TextView 
    android:id="@+id/trip_id" 
    android:layout_width="wrap_content" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:text="XXXXXXXXXX" 
    android:layout_gravity="right" 
    /> 
<TextView 
    android:id="@+id/approval_status" 
    android:layout_width="wrap_content" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:text="Waiting" 
    android:layout_gravity="right" 
    /> 

Кроме того, если у вас нет, чтобы добавить что-нибудь еще, вы можете использовать только один LinearLayout.

0

Что такое вторая линейная компоновка делает в XML .Вы хочет, чтобы все эти текстовые взгляды выровненных в соответствии с равным весом удалить андроид:? Layout_gravity = «влево» от всех ваши текстовые представления. Сделайте это так ...

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/mainResultLayout" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:gravity="center" 
android:baselineAligned="false" 
android:orientation="horizontal" > 


<TextView 
    android:id="@+id/request_date" 
    android:layout_width="0dp" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:text="25 Sep 2013 | 09:45" 
    /> 

<TextView 
    android:id="@+id/approval_id" 
    android:layout_width="0dp" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:text="XXXXXXXX" 
    /> 
<TextView 
    android:id="@+id/trip_date" 
    android:layout_width="0dp" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:text="25 Sep 2013" 
    /> 

<TextView 
    android:id="@+id/trip_id" 
    android:layout_width="0dp" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:text="XXXXXXXXXX" 
    /> 
<TextView 
    android:id="@+id/approval_status" 
    android:layout_width="0dp" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:text="Waiting" 
    /> 


</LinearLayout> 
1

попробуйте этот код, чтобы установить правильный пробел в каждом макете.

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/mainResultLayout" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:gravity="center" 
android:orientation="horizontal" > 

<LinearLayout 
android:id="@+id/linearLayout2" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:orientation="horizontal" > 

<TextView 
    android:id="@+id/request_date" 
    android:layout_width="0dp" 
    android:layout_weight=".20" 
    android:layout_height="wrap_content" 
    android:text="25 Sep 2013 | 09:45" 
    android:layout_gravity="left"/> 

<TextView 
    android:id="@+id/approval_id" 
    android:layout_width="wrap_content" 
    android:layout_weight=".20" 
    android:layout_height="wrap_content" 
    android:text="XXXXXXXX" 
    /> 
<TextView 
    android:id="@+id/trip_date" 
    android:layout_width="wrap_content" 
    android:layout_weight=".20" 
    android:layout_height="wrap_content" 
    android:text="25 Sep 2013" 
    /> 

<TextView 
    android:id="@+id/trip_id" 
    android:layout_width="wrap_content" 
    android:layout_weight=".20" 
    android:layout_height="wrap_content" 
    android:text="XXXXXXXXXX" 
    /> 
<TextView 
    android:id="@+id/approval_status" 
    android:layout_width="wrap_content" 
    android:layout_weight=".20" 
    android:layout_height="wrap_content" 
    android:text="Waiting" 
    /> 

</LinearLayout> 
</LinearLayout> 
0

Просто измените ширину на match_parent в каждом случае.

<LinearLayout 
android:id="@+id/linearLayout2" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:orientation="horizontal" > 

<TextView 
    android:id="@+id/request_date" 
    android:layout_width="match_parent" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:text="25 Sep 2013 | 09:45" 
    android:layout_gravity="left"/> 

<TextView 
    android:id="@+id/approval_id" 
    android:layout_width="match_parent" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:text="XXXXXXXX" 
    android:layout_gravity="right" 
    /> 
<TextView 
    android:id="@+id/trip_date" 
    android:layout_width="match_parent" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:text="25 Sep 2013" 
    android:layout_gravity="right" 
    /> 

<TextView 
    android:id="@+id/trip_id" 
    android:layout_width="match_parent" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:text="XXXXXXXXXX" 
    android:layout_gravity="right" 
    /> 
<TextView 
    android:id="@+id/approval_status" 
    android:layout_width="match_parent" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:text="Waiting" 
    android:layout_gravity="right" 
    /> 

Смежные вопросы