ListView внутри ScrollView


Поэтому я знаю, что не могу использовать ListView внутри ScrollView, потому что ScrollView получает фокус в этом случае и ListView становится не прокручиваемым. Но у меня есть программа, которая выходит из экрана, когда в ландшафтном режиме, и мне нужно прокрутить вниз, чтобы увидеть остальную часть программы, поэтому я использую LinearLayout(vertical) с ScrollView, который содержит большую часть программы, и под этим ScrollView я получил свой ListView. Теперь я хочу иметь возможность прокручивать вниз до моего ListView, когда я нахожусь в ландшафтном режиме, но он не позволяет мне сделать это, он останавливает меня, где ListView начинается. Есть ли какое-то решение для этого, или мне лучше сделать так, чтобы моя программа оставалась в портретном режиме?

2 2

2 ответа:

Вы все еще пытаетесь вложить ListView в ScrollView в ландшафтном режиме...

Я предлагаю создать новыйландшафтный конкретный макет с двумя столбцами: левая сторона содержит элементы пользовательского интерфейса внутри ScrollView иправая сторона содержит ListView. Таким образом, оба представления будут по-прежнему поддерживать прокрутку.

Просто сохраните этот новый макет в новой папке res/layout-land с тем же именем файла , что и книжный макет вres/layout. ОС будет автоматически переключать макеты при изменении ориентации.

Вы можете прочитать больше об этом: поддержка различных экранов

Этот конечный результат будет похож на старое изображение Google Market:

Ландшафт Рынка Гула

Левая, зеленая сторона может прокручиваться, если это необходимо, и правая, белая сторона будет прокручиваться также.

Покончите с VerticalLayout и вставьте остальную часть содержимого в виде верхнего и нижнего колонтитулов ListView