我正在实现一个在CardViews
中堆叠RecyclerView
的界面,我想要的结果类似于Gmail的Inbox。正如您在此屏幕截图中看到的,它在5.0+上运行良好! 这正是我想要的。
但4.4及更早版本无法访问android:elevation
属性,因此元素之间存在视觉分离。
现在,有一个属性android.support.v7.cardview:cardUseCompatPadding
,它将使API 21+像API 20及更低版本一样工作,但我想要相反(让4.4表现得像5.0)。我怎么能这样做?
答案 0 :(得分:2)
您可以使用FrameLayout或RelativeLayout作为项目视图的父级来获得一致的外观。如果您的项目布局如下所示:
<CardView android:layout_width="match_parent"
android:layout_height="match_parent">
...
</CardView>
您可以使用FrameLayout替换CardView元素:
<FrameLayout android:layout_width="match_parent"
android:layout_height="match_parent">
...
</FrameLayout>
在RecyclerView.Adapter.onCreateViewHolder中,您将返回后一项目布局。