如何在AndroidX中的布局XML中添加cardview

时间:2018-10-31 18:10:18

标签: android androidx

如何在AndroidX中的布局xml中添加cardview

升级到AndroidX后

<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_margin="5dp">

出现错误

  

找不到以下类:   -android.support.v7.widget.CardView(修复构建路径,编辑XML,创建类)

dependencies {

    implementation 'androidx.appcompat:appcompat:1.0.0'

    implementation 'androidx.cardview:cardview:1.0.0'

但是我不知道如何在AndroidX下的xml中使用CardView

谢谢

10 个答案:

答案 0 :(得分:16)

对于AndroidX,添加gradle依赖项

implementation 'androidx.cardview:cardview:1.0.0'

然后在xml-layout中使用

<androidx.cardview.widget.CardView

答案 1 :(得分:16)

我认为Best Approach应该像,首先了解问题陈述。

场景:

  • 搜索Google Inc针对“ AndroidX”更改的库,并将其包含在项目中

解决方案:

转到Android开发者网站的Artifact Mappings页并搜索所需的库。

enter image description here

现在转到{{3} }页面并检查当前版本号

AndroidX Releases

现在转到build.gradle[module.app]添加所需的库。 (例如CardView),然后按
Sync Now,必要的文件将通过gradle添加到您的项目中。

参见下图:

/> enter image description here

现在在xml文件中,您应该获得CardView或刚刚导入的内容。

  

注意:此处包含的图片(前两张)是从enter image description here拍摄的,该图片属于Google Inc.,视您看到的时间而定。查看此帖子的发布时间。

答案 2 :(得分:10)

班级已更改为:

androidx.cardview.widget.CardView

如果要使用旧的类名,则需要将android:enableJetifier=true添加到gradle.properties并改为使用appcompat依赖项。

答案 3 :(得分:5)

您有2种不同的选择:

只需添加:

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

,您可以在xml中使用:

 <com.google.android.material.card.MaterialCardView
  ...>
  • Androidx CardView

只需添加:

implementation 'androidx.cardview:cardview:1.0.0'

,您可以在xml中使用:

<androidx.cardview.widget.CardView>

它们是不同的:

MaterialCardView 扩展 androidx.cardview.widget.CardView,并提供了CardView的所有功能,但添加了用于自定义笔触的属性,并默认使用了更新的Material样式(默认使用)样式Widget.MaterialComponents.CardView

More info here

答案 4 :(得分:2)

df['Ti'] = df['49Ti/30Si16O'] * df.b + df.a df['49Ti/30Si16O_error_min'] = df['49Ti/30Si16O'] - df['1 se err'] df['49Ti/30Si16O_error_max'] = df['49Ti/30Si16O'] + df['1 se err'] df['b_error_min'] = df.b - df.sigb df['b_error_max'] = df.b + df.sigb df['a_error_min'] = df.a - df.siga df['a_error_max'] = df.a + df.siga df['Ti_min'] = df['49Ti/30Si16O_error_min'] * df['b_error_min'] + df['a_error_min'] df['Ti_max'] = df['49Ti/30Si16O_error_max'] * df['b_error_max'] + df['a_error_max']

implementation com.google.android.material:material:1.0.0

它是下载所有与设计有关的课程。 它对我的工作

答案 5 :(得分:0)

替换此行

来自

<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"

<androidx.cardview.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"

这将在AndroidX中正常工作。

答案 6 :(得分:0)

在gradle依赖项中添加'androidx.cardview:cardview:1.0.0'并相应地修改xml。

答案 7 :(得分:0)

我在Android Studio 3.5.1中遇到了同样的问题。它对我有用:

def cardview_version = "1.0.0"
implementation "androidx.cardview:cardview:$cardview_version"


xmln: <androidx.cardview.widget.CardView>....

答案 8 :(得分:0)

变化: 1。 build.gradle(:app)

dependencies {
...
implementation 'androidx.cardview:cardview:1.0.0' 
....
}

2。在xml部分中:

<androidx.cardview.widget.CardView>
...
</androidx.cardview.widget.CardView>

答案 9 :(得分:0)

 implementation 'androidx.cardview:cardview:1.0.0' // must add this ``


               <androidx.cardview.widget.CardView
                android:layout_width="match_parent"
                android:layout_height="200dp"
                android:layout_marginLeft="25dp"
                android:layout_marginTop="20dp"
                android:id="@+id/game_id"
                android:layout_marginRight="25dp"
                app:cardBackgroundColor=""
                app:cardCornerRadius="15dp">

                <LinearLayout
                    android:layout_width="match_parent"
                    android:orientation="horizontal"
                    android:layout_height="match_parent">

                    <ImageView
                        android:layout_width="130dp"
                        android:layout_height="170dp"
                        android:layout_gravity="center"
                        android:layout_marginLeft="5dp"
                        android:background="@drawable/gamess">

                    </ImageView>


                    <TextView
                        android:layout_width="130dp"
                        android:layout_marginLeft="20dp"
                        android:layout_height="wrap_content"
                        android:layout_below="@+id/game"
                        android:layout_centerHorizontal="true"
                        android:layout_marginTop="10dp"
                        android:gravity="center"
                        android:text="Gamensjnjdhddgsgddgjsdjsdgjsgdjsgddgjsdjsdjg"
                        android:textColor="@color/white_color"
                        android:textSize="16dp"
                        android:textStyle="bold">

                    </TextView>
                </LinearLayout>

            </androidx.cardview.widget.CardView>
<块引用>

[![Blockquote][1]][1]