在此示例中,我将ListView
嵌入到CardView
中。出于视觉目的,此CardView
之上有8dp的余量。期望的行为是,当用户开始向下滚动时,此上边距应该消失。到目前为止,我只能通过在CardView
中嵌入ScrollView
来实现这一目标,并且由于列表往往很大,这大大破坏了性能。有任何建议如何解决这个问题?
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:style="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/background"
android:paddingTop="8dp"
android:paddingStart="4dp"
android:paddingEnd="4dp"
android:orientation="vertical">
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/sample_white"
android:orientation="vertical">
<ListView
android:id="@+id/list"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</RelativeLayout>
</android.support.v7.widget.CardView>
</LinearLayout>
提前致谢!
我会尝试使用显示相关边距的图像来使事情更清晰。
现在当我向下滚动时,列表元素向上移动但边距仍然存在并使列表看起来很奇怪。