Линейная компоновка в scrollview не занимает полную высоту

У меня есть линейный макет, скажем, V1, внутри L1 у меня есть scrollview V2, внутри scrollview у меня есть еще один линейный макет V3, теперь V3 имеет gridtview V4. Pbm состоит в том, что, если в моем списке указано 6 элементов, видно только 2, для отдыха я должен прокручивать, даже когда вижу много свободного места. Я установил цвета фона (цвет фона для V2: пурпурный, для V3 зеленый) и заметил следующее: V2 покрывает весь V1 V3 охватывает только часть, говорят, что 30% V2, V4 покрывает полный V3. Поэтому я сделал почти все, что мог бы сделать, чтобы сделать V3 Cover All V2, но не успехом. Я потратил много часов на это, plz сообщите мне, есть ли у этого решения.

// Scrollview Params V2 LinearLayout.LayoutParams svParams = new LinearLayout.LayoutParams (ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT, 1.0F);

Итак, все эти вещи, которые я пробовал, не работают:

V3.getLayoutParams().height = V2.getHeight(); //((LinearLayout)gv.getParent()).getLayoutParams().height = LinearLayout.LayoutParams.FILL_PARENT; //((LinearLayout.LayoutParams)((LinearLayout)gv.getParent()).getLayoutParams()).weight = 1.0F; //((LinearLayout) ((LinearLayout)gv.getParent()).getParent()).getLayoutParams().height = LinearLayout.LayoutParams.FILL_PARENT; 

НО, если я дам некоторое твердое значение для V4, оно увеличивает высоту всех его родительских представлений, но я не хочу этого делать, и это невозможно в моем приложении

Просто используйте setFillViewport(true) в ScrollView . Таким образом, если содержимое ScrollView меньше видимой части ScrollView , оно будет расширено, чтобы заполнить этот регион.

Попробуйте установить android: layout_weight = "1" в L1

Intereting Posts