CardView сворачивает мое приложение AS во время выполнения, как я могу использовать CardView надлежащим образом? - PullRequest
0 голосов
/ 13 октября 2019

У меня есть простое приложение, которое рушится, когда я его запускаю. Когда я удаляю CardView представление, приложение работает должным образом.

Как я могу добавить представление CardView соответствующим образом?

Я подозреваю, что правильное замедлениеCardView представление должно быть другим тогда: android.support.v7.widget.CardView.

Вот activity.main.xml:

<?xml version="1.0" encoding="utf-8"?>


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">

    <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>

Вот build.gradle (Модуль: приложение):

apply plugin: 'com.android.application'

android {
    compileSdkVersion 29
    buildToolsVersion "29.0.2"
    defaultConfig {
        applicationId "android.example.blah1111"
        minSdkVersion 15
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
}

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:29.0.0'
}

1 Ответ

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

EDITED

У вас есть зависимость appcompat, которая содержит правильную версию CardView. Итак, просто измените ссылку с android.com на androidx в вашем XML. Не забудьте избавиться от старой неиспользованной зависимости. Также взгляните на эту статью https://developer.android.com/jetpack/androidx/migrate

...