Cardview не отображается в Android Studio 3.5.1 - PullRequest
1 голос
/ 21 октября 2019

Я попробовал CardView библиотеку на более старой версии Android Studio 3.3.1, и код работал. Эмулятор отображал правильные изображения. Но я перешел на новую версию 3.5, в CardView ничего не отображается, даже TextView.

xml код:

<?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"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="10dp"
    android:background="#fcfcfc"
    android:gravity="center"
    android:id="@+id/LinearLayout1">

    <!-- A CardView that contains a TextView -->
    <android.support.v7.widget.CardView
        xmlns:card_view="http://schemas.android.com/apk/res-auto"
        android:id="@+id/card_view"
        android:layout_gravity="center"
        android:layout_width="200dp"
        android:layout_height="200dp"
        card_view:cardCornerRadius="4dp">

        <TextView
            android:id="@+id/info_text"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />
    </android.support.v7.widget.CardView>

</LinearLayout>

Gradle:

dependencies {

implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.2.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
implementation 'com.android.support:cardview-v7:28.0.0'

}

Ответы [ 2 ]

2 голосов
/ 21 октября 2019

Вы должны использовать

<androidx.cardview.widget.CardView //XML Section

Добавить AndroidX зависимость

implementation 'androidx.cardview:cardview:1.0.0'
1 голос
/ 21 октября 2019

Вы не можете использовать библиотеки поддержки и andriodx вместе.

Изменить

implementation 'com.android.support:cardview-v7:28.0.0'

на

implementation 'androidx.cardview:cardview:1.0.0'

И использовать androidx.cardview.widget.CardView в вашем макете / коде.

Существует еще одна реализация CardView.
. Она включена в библиотеку компонентов

Просто добавьте:

implementation 'com.google.android.material:material:1.1.0-beta01'

и в своем XML вы можете использовать:

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

Они различаются:

MaterialCardView расширяет androidx.cardview.widget.CardView и предоставляет все функции CardView, но добавляет атрибуты для настройки обводки и использует обновленный стиль материала по умолчанию.

...