简体   繁体   中英

Problem with changing the radius of corners in MaterialCardView

I'm trying to disable the bottom corner rounding of MaterialCardView , but after applying it, all corners lose their rounding.

        mainCard.shapeAppearanceModel = mainCard.shapeAppearanceModel.toBuilder()
            .setBottomLeftCorner(CornerFamily.ROUNDED, 0f)
            .setBottomRightCorner(CornerFamily.ROUNDED, 0f)
            .setTopLeftCorner(CornerFamily.ROUNDED, resources.getDimension(R.dimen.cornerSize))
            .setTopRightCorner(CornerFamily.ROUNDED, resources.getDimension(R.dimen.cornerSize))
            .build()

My layout:

<com.google.android.material.card.MaterialCardView
    android:id="@+id/mainCard"
    android:layout_width="0dp"
    android:layout_height="0dp"
    android:layout_margin="8dp"
    app:cardCornerRadius="12dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent">

    <androidx.constraintlayout.widget.ConstraintLayout
        android:id="@+id/main"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@android:color/white">

    </androidx.constraintlayout.widget.ConstraintLayout>

</com.google.android.material.card.MaterialCardView>

Try to use:

<com.google.android.material.card.MaterialCardView
    android:id="@+id/mainCard"
    app:cardPreventCornerOverlap="false"
    app:cardUseCompatPadding="false" 
    app:contentPadding="4dp"
    ..>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM