Intereting Posts
Запуск теста Junit с использованием инструментария андроида на пакете с классами в определенном порядке Как правильно удалить фрагмент оставшегося экземпляра Развернуть групповую строку программно в расширяемом списке Android: эмулятор не запускается с установленным разрешением FullHD Разработчик Android «Загрузите новый APK в Production 99% complete» и застрял Обрабатываемый XML с различным поведением в 4.3 и 4.1.2 Как увеличить разрешение камеры при использовании намерения IMAGE_CAPTURE Pojo анализирует gson с недопустимыми именами java Android перестает предлагать слова Программно нажмите на просмотр в андроиде Как отладить J2V8 в Android с помощью инструментов для создания Chrome? Создание календаря с провайдером контента Android 4.0 (ICS) FindViewById () возвращает null – попробовал ВСЕ NullPointerException в android.support.v7.app.ActionBarImplICS.getThemedContext Android Проверьте действие пользователя на Intent.ACTION_VIEW

Android: странная инверсия веса в LinearLayout

Это макет xml, над которым я работаю:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#FFFFFF" android:orientation="vertical" > <ScrollView android:layout_weight="2" android:id="@+id/scrollConfirm" android:layout_width="fill_parent" android:layout_height="fill_parent"> </ScrollView> <LinearLayout android:layout_marginTop="20px" android:layout_weight="1" android:id="@+id/imageNumpad" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <ImageView android:src="@drawable/myicon" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="bottom" android:background="#FFFFFF" /> </LinearLayout> </LinearLayout> 

Поскольку я установил ScrollView с layout_weight="2" и LinearLayout (child) с layout_weight="1" я ожидал, что ScrollView будет использовать вдвое больше свободного пространства, чем LinearLayout. Но я получаю противоположный результат. ScrollView меньше LinearLayout. Если я установил для ScrollView layout_weight="1" и LinearLayout с layout_weight="2" , ScrollView больше LinearLayou.

Как это возможно??

Вес становится обратным, потому что вы используете match_parent как layout_height . Вес используется для распределения оставшегося пустого пространства или удаления пространства, когда общая сумма больше, чем LinearLayout . Установите свои высоты на 0dip, это сработает.

Т.е. установите layout_height = "0dip" как для ScrollView и для внутреннего LinearLayout .

Справка :

Использование layout_weight с макетами Android