2016-09-14 4 views
0

Я создаю простой макет в Android, и у меня есть проблема при отображении. Дело в том, что все элементы не отображаются. Дело в том, что есть только календарь и таймпикер, но нет других.layout_weight не работает должным образом

Это мой код

<LinearLayout 
    android:id="@+id/sms_linear_layout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:layout_alignParentTop="true" 
    android:gravity="center_horizontal" 
    android:orientation="vertical" 
    android:weightSum="8"> 


    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:gravity="center" 
     android:text="@string/sms_id_sms_pro" /> 

    <EditText 
     android:id="@+id/sms_id_sms_pro" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:gravity="center" /> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:gravity="center" 
     android:text="@string/sms_nb_remainning" /> 

    <EditText 
     android:id="@+id/sms_nb_remainning" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:gravity="center" /> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:gravity="center" 
     android:text="@string/sms_name_sender" /> 


    <EditText 
     android:id="@+id/sms_name_sender" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:gravity="center" 
     android:maxLength="11" /> 

    <CalendarView 
     android:id="@+id/sms_calendar" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1"/> 

    <TimePicker 
     android:id="@+id/sms_time" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1"/> 

</LinearLayout> 

и это результат: my result

+0

Что произойдет, если вы удалите веса? Я думаю, что если вы установите вес, то высота должна быть «0dp». –

ответ

2

Присвоить 0dp значение высоты для всех представлений, так что вес макета можно отрегулировать

android:layout_height="0dp" 

выписка demo

0

Я сделал это, но результат странно:

<LinearLayout 
    android:id="@+id/sms_linear_layout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:layout_alignParentTop="true" 
    android:gravity="center_horizontal" 
    android:orientation="vertical" 
    android:weightSum="8"> 


    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:gravity="center" 
     android:text="@string/sms_id_sms_pro" /> 

    <EditText 
     android:id="@+id/sms_id_sms_pro" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:gravity="center" /> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:gravity="center" 
     android:text="@string/sms_nb_remainning" /> 

    <EditText 
     android:id="@+id/sms_nb_remainning" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:gravity="center" /> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:gravity="center" 
     android:text="@string/sms_name_sender" /> 

    <EditText 
     android:id="@+id/sms_name_sender" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:gravity="center" 
     android:maxLength="11" /> 

    <CalendarView 
     android:id="@+id/sms_calendar" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1"/> 

    <TimePicker 
     android:id="@+id/sms_time" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1"/> 

</LinearLayout> 

new result

+0

1st не ставьте это как ответы, просто обновляйте свой вопрос, во-вторых, ваши взгляды перекрываются просто потому, что для всех недостаточно места, вам нужно либо поместить их в ScrollView, иначе может быть много другого мало сложного решения, которое вы можете думать –

+0

ok thx Я попробую! –

+0

Это работает !!! THX очень мой друг !! –

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