Ответ 1
Вместо этого вы должны использовать NestedScrollView. Однако вам может понадобиться написать собственный LayoutManager. Ознакомьтесь с этим SO-ответом для более подробной информации
Я пытаюсь показать горизонтальные элементы recyclerview и вертикальные элементы recyclerview внутри ScrollView
Scrollview не работает даже если я использую android: fillViewport = "true"
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
//Horizontal Recyclerview items
<RecyclerView
android:layout_width="match_parent"
android:layout_height="wrap_content">
</RecyclerView>
//vertical Recyclerview items
<RecyclerView
android:layout_width="match_parent"
android:layout_height="match_parent"></RecyclerView>
</LinearLayout>
</ScrollView>
Вместо этого вы должны использовать NestedScrollView. Однако вам может понадобиться написать собственный LayoutManager. Ознакомьтесь с этим SO-ответом для более подробной информации
Для использования recyclerview внутри прокрутки нужно использовать собственный менеджер макетов.
Вы можете удалить scrollview и создать элемент заголовка в вертикальном recyclerview, который содержит горизонтальный recyclerview.
Также вы не должны использовать recyclerview внутри scrollview. Поэтому подумайте, что второй подход будет лучше.
Также вы можете использовать Snap-RecyclerView-Utils. Он имеет линейный менеджер компоновки для recyclerview внутри вида прокрутки и адаптера, который может помочь вам создать заголовок, содержащий горизонтальный recyclerview.
ScrollView
может быть только один ребенок.
Удалите RelativeLayout
и повторите попытку.
Кроме того, android:layout_height
в ScrollView
должен быть установлен в wrap_content
Кроме того, я не совсем уверен, если он работает, поскольку в Docs указано, что
Вы никогда не должны использовать ScrollView с ListView, потому что ListView позаботится о своей собственной вертикальной прокрутке. Самое главное, что это приводит к поражению всех важных оптимизаций в ListView для работы с большими списками, поскольку оно эффективно заставляет ListView отображать весь свой список элементов, чтобы заполнить бесконечный контейнер, предоставленный ScrollView.
Возможно, a NestedScrollView
работает, так как он предназначен для
NestedScrollView похож на ScrollView, но он поддерживает действие как родителя и дочернего родителя с прокруткой на обеих новых и старых версиях Android. Вложенная прокрутка включена по умолчанию.