如何修复 Android 中 CardView 底部的意外白线
How to fix unexpected white line in bottom of CardView in Android
我有一个像这样的CardView
,但是底部不应该有的地方有一条白线。知道是什么原因造成的吗?
这是代码!
<android.support.v7.widget.CardView
android:id="@+id/card_view"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="5"
app:cardCornerRadius="4dp"
android:layout_margin="5dp">
<ListView
android:id="@+id/home_list_listview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="@null"
android:dividerHeight="0dp"
android:drawSelectorOnTop="true"
android:orientation="vertical"
tools:listitem="@layout/home_list_item"/>
</android.support.v7.widget.CardView>
I am programmatically setting the height of each element in the listview. So the list view's total height / 4. I'm guessing the issue is that when the listview's pixel count isn't evenly divisible by 4, I have an extra 1-2 pixels that don't get colored.
同意。
我建议不要使用 ListView
,而是只使用四行作为垂直视图 LinearLayout
,每行的权重为 1 以平均划分 space。
或者,调整您的尺寸计算以将剩余像素考虑在内,根据需要将它们分配给行。
我认为该行是 CardView 兼容的错误。如果将 cardCornerRadius 设置为 0dp,那条线就会消失。此问题仅发生在 api <21.
我有一个像这样的CardView
,但是底部不应该有的地方有一条白线。知道是什么原因造成的吗?
这是代码!
<android.support.v7.widget.CardView
android:id="@+id/card_view"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="5"
app:cardCornerRadius="4dp"
android:layout_margin="5dp">
<ListView
android:id="@+id/home_list_listview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="@null"
android:dividerHeight="0dp"
android:drawSelectorOnTop="true"
android:orientation="vertical"
tools:listitem="@layout/home_list_item"/>
</android.support.v7.widget.CardView>
I am programmatically setting the height of each element in the listview. So the list view's total height / 4. I'm guessing the issue is that when the listview's pixel count isn't evenly divisible by 4, I have an extra 1-2 pixels that don't get colored.
同意。
我建议不要使用 ListView
,而是只使用四行作为垂直视图 LinearLayout
,每行的权重为 1 以平均划分 space。
或者,调整您的尺寸计算以将剩余像素考虑在内,根据需要将它们分配给行。
我认为该行是 CardView 兼容的错误。如果将 cardCornerRadius 设置为 0dp,那条线就会消失。此问题仅发生在 api <21.