cardBackgroundColor и cardCornerRadius не работают в AndroidX - PullRequest
2 голосов
/ 01 июля 2019

Я борюсь с угловым радиусом CardView и цветом фона с библиотеками AndroidX.

Я определил свой макет, как показано ниже:

<?xml version="1.0" encoding="utf-8"?>
<androidx.cardview.widget.CardView
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        xmlns:card_view="http://schemas.android.com/apk/res-auto"
        android:layout_width="@dimen/retail_card_width"
        card_view:cardCornerRadius="@dimen/card_radius"
        card_view:cardBackgroundColor="@color/baseYellow"
        android:layout_height="@dimen/retail_card_height">
    <androidx.constraintlayout.widget.ConstraintLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">
        <ImageView android:layout_width="match_parent" android:layout_height="match_parent"
                   tools:src="@drawable/ic_fruit_1"
                   app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent"
                   app:layout_constraintStart_toStartOf="parent"
                   android:scaleType="fitEnd"
                   app:layout_constraintTop_toTopOf="parent"/>
        <ImageView
                android:id="@+id/ivRetailBrand"
                android:layout_width="@dimen/brand_icon_size"
                android:layout_height="@dimen/brand_icon_size"
                tools:src="@drawable/esselunga"
                android:layout_marginTop="@dimen/retail_brand_margin"
                android:background="@drawable/round_outline"
                app:layout_constraintTop_toTopOf="parent" app:layout_constraintStart_toStartOf="parent"
                android:layout_marginStart="@dimen/retail_brand_margin"/>
    </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.cardview.widget.CardView>

К сожалению, ни cardCornerRadius, ни cardBackgroundColor не работают с моим макетом. Я не могу понять, зависит ли моя проблема от библиотек AndroidX или нет.

Вот мой предварительный просмотр макета:

cardview issue

Ответы [ 3 ]

0 голосов
/ 01 июля 2019

Я не думаю, что это связано с настройкой CardView.

Проверьте ваш ImageView, они могут быть причиной того, что угол не округляется.

Код комментария Out Image View (весь ConstraintLayout)и проверьте интерфейс. Как у меня была та же проблема в прошлом.

0 голосов
/ 01 июля 2019

Оказалось, что проблема заключалась в том, что я смешивал библиотеку cardview androidx с поддержкой библиотеки recyclerview. Однажды я перестроил проект с помощью:

implementation 'androidx.recyclerview:recyclerview:1.0.0'
implementation 'androidx.cardview:cardview:1.0.0'

все получилось нормально.

0 голосов
/ 01 июля 2019

Попробуйте изменить CardView следующим образом:

<androidx.cardview.widget.CardView
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="@dimen/retail_card_width"
        app:cardCornerRadius="@dimen/card_radius"
        app:cardBackgroundColor="@color/baseYellow"
        android:layout_height="@dimen/retail_card_height">
...