我有一个ScrollView,其中包含一些元素,其余的是两个ListView。每个ListView中的项目数量是限制,我不希望它们滚动。但是,我确实希望ScrollView本身可以滚动,并且出于某种原因,它不是。什么是这个问题的好方法?
几乎在我读到的任何地方,它都说我不应该将ListViews放在ScrollView中,但是我需要看起来类似于这个布局的东西,实际上是函数(包括标题,如果相应的列表是空的,它应该会消失反之亦然) -
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/root"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@color/light_gray_real">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:elevation="15dp">
<EditText
android:id="@+id/etSearch"
android:layout_width="match_parent"
android:layout_height="45dp"
android:hint="Search values here"
android:textCursorDrawable="@null"
android:paddingStart="10dp"
android:background="@android:color/transparent"/>
<ImageButton
android:id="@+id/btnClear"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end|center"
android:layout_margin="5dp"
android:src="@drawable/places_ic_clear"
android:background="@android:color/transparent"/>
</FrameLayout>
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:isScrollContainer="true">
<TextView
android:id="@+id/tvTitle1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Title 1"
android:paddingStart="10dp"
android:paddingTop="2dp"
android:paddingBottom="2dp"
android:visibility="gone"/>
<ListView
android:id="@+id/listview1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/white"/>
<TextView
android:id="@+id/tvTitle2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Title 2"
android:paddingStart="10dp"
android:paddingTop="2dp"
android:paddingBottom="2dp"
android:visibility="gone"/>
<ListView
android:id="@+id/listview2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/white"/>
</LinearLayout>
</ScrollView>
答案 0 :(得分:1)
由于scrollview和listview不支持嵌套滚动,因此无法使用它们。您可以使用自定义滚动视图或
您可以使用nestedscrollview而不是scrollview和Recyclerview而不是listview。