1

я использую следующий макет с весами ... И в предварительном просмотре и на моем Android 4 мобильное все работает отлично ...андроид - layout_weight на Android 2.3 не работает, как ожидалось

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

Если я изменю последний вес на 1, чтобы все виды имели a layout_weight 1, он также работает на старом телефоне ...

Что делать неправильно? Есть трюк?

<com.actionbarsherlock.internal.widget.IcsLinearLayout 
    android:id="@+id/illBottom" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentLeft="true" > 

    <ImageButton 
     android:id="@+id/btSelectAll" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:background="@drawable/abs__item_background_holo_dark" 
     android:gravity="center" 
     android:onClick="onClick" 
     android:padding="4dip" 
     android:src="@drawable/holo_dark_content_select_all" /> 

    <ImageButton 
     android:id="@+id/btDeselectAll" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:background="@drawable/abs__item_background_holo_dark" 
     android:gravity="center" 
     android:onClick="onClick" 
     android:padding="4dip" 
     android:src="@drawable/holo_dark_custom_content_deselect_all" /> 

    <ImageButton 
     android:id="@+id/btDeleteSelected" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:background="@drawable/abs__item_background_holo_dark" 
     android:gravity="center" 
     android:onClick="onClick" 
     android:padding="4dip" 
     android:src="@drawable/holo_dark_content_discard" /> 

    <Spinner 
     android:id="@+id/spData" 
     style="@style/Widget.Sherlock.Spinner.DropDown.ActionBar" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_weight="2" /> 
</com.actionbarsherlock.internal.widget.IcsLinearLayout> 
+0

Я замечаю, что вы используете ActionBarSherlock, но можете ли вы установить ориентацию «LinearLayout» на горизонтальный? Обычно вы указываете ориентацию для перехода с параметром, который вы даете 0dp. – Rarw

+0

вы правы ... просто попробовали, но это не решило мою проблему – prom85

+0

, почему вы установили layout_weight = "2" на счетчик. обычно, если вы хотите установить на вид больше, чем другие, лучше будет взять сумму, например, 1. Таким образом, разделите значения, например, для других представлений set 0.2 и spinner 0.4. – Opiatefuchs

ответ

1

Скорее всего, вам нужно добавить линейный макет по всей вещи или использовать уже сделали ком .... И поставили андроид: layout_weightSum = «3 или любой»

Поместите это в какой-то элемент содержит кнопки изображения.