我想在CardView半径中剪切垂直线视图
喜欢这张照片:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="140dp"
android:layout_margin="20dp"
app:cardCornerRadius="40dp">
<!-- radiused vertical line here -->
</android.support.v7.widget.CardView>
</LinearLayout>
答案 0 :(得分:0)
尝试一下
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:gravity="center"
android:orientation="vertical"
android:padding="16dp">
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="140dp"
android:layout_margin="20dp"
app:cardCornerRadius="40dp">
<View
android:layout_width="5dp"
android:layout_height="300dp"
android:layout_gravity="right"
android:layout_marginRight="10dp"
android:background="#a40404" />
<View
android:layout_width="5dp"
android:layout_height="300dp"
android:layout_gravity="right"
android:layout_marginRight="20dp"
android:background="#a40404" />
<!-- radiused vertical line here -->
</android.support.v7.widget.CardView>
</LinearLayout>
答案 1 :(得分:0)
您可以尝试为剪切视图设置弯曲的背景资源。
这是一个示例形状文件,您需要根据需要修改半径值。
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid
android:color="#a40404" />
<corners
android:topRightRadius="40dp"
android:bottomRightRadius="40dp"/>
</shape>
以及CardView主布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="140dp"
android:layout_margin="20dp"
app:cardCornerRadius="40dp"
app:cardPreventCornerOverlap="false">
<View
android:layout_width="5dp"
android:layout_height="match_parent"
android:layout_gravity="right"
android:layout_marginTop="10dp"
android:layout_marginRight="10dp"
android:layout_marginBottom="10dp"
android:background="@drawable/curved_bg" />
<View
android:layout_width="5dp"
android:layout_height="match_parent"
android:layout_gravity="right"
android:layout_marginTop="3dp"
android:layout_marginRight="20dp"
android:layout_marginBottom="3dp"
android:background="@drawable/curved_bg" />
</android.support.v7.widget.CardView>
</LinearLayout>