如何在不将其放入滚动视图的情况下使 linearLayout 滚动

How to make linearLayout scroll without putting it inside scrollview

我有一个 linearlayout 包含

textView
imageView
Horizontal recyclerview
TextView
Horizontal Recyclerview
Webview

如何在不把它放在scrollview里面的情况下做到scrollable

在不使用 Scrollview 的情况下使线性布局可滚动

如果您只在线性布局中使用 listview,则不需要使用 scrollview.Because ListView 可滚动 default.But 如果您还有其他组件,则可以分开另一个 scrollview.Make 中的那些确保 ScrollView 仅使用一个直接子布局。下面是一个示例代码。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:orientation="vertical"
  android:background="#ffffff"> 

   <ListView

    android:id="@android:id/list"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:divider="#b5b5b5"
    android:dividerHeight="1dp"
    android:cacheColorHint="#00000000"/> 

</LinearLayout>

你不能。线性布局的设计目的不是使其内容可滚动 - 只有将其嵌入到 FrameLayout(或 ScrollView,它是一个子类)中,您才能 scroll/pan。为什么 ScrollView 不是一个选项?

顺便说一句,垂直滚动容器内的水平滚动容器效果不佳 UI/UX,但还有其他方法可以实现您的目标。请向我们提供更多详细信息,我相信我们能够为您提供帮助

根据android开发者网站,建议ScrollView中不要有RecyclerView/ListView。

Never add a RecyclerView or ListView to a scroll view. Doing so results in poor user interface performance and a poor user experience.

供参考 https://developer.android.com/reference/android/widget/ScrollView

此外,建议使用 NestedScrollView。