如何在 AndroidX 的布局 xml 中添加 cardview
How to add cardview in layout xml in 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">
报错
The following classes could not be found:
- android.support.v7.widget.CardView (Fix Build Path, Edit XML, Create Class)
dependencies {
implementation 'androidx.appcompat:appcompat:1.0.0'
implementation 'androidx.cardview:cardview:1.0.0'
但是我不知道如何在AndroidXxml下使用CardView
谢谢
class已更改为:
androidx.cardview.widget.CardView
如果您想使用旧的 class 名称,您需要将 android:enableJetifier=true
添加到 gradle.properties
并改用 appcompat 依赖项。
替换此行
来自
<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.
中正常工作
在gradle依赖项中添加'androidx.cardview:cardview:1.0.0'并相应修改xml。
对于 AndroidX,添加 gradle 依赖项
implementation 'androidx.cardview:cardview:1.0.0'
然后在xml-布局中使用
<androidx.cardview.widget.CardView
implementation com.google.android.material:material:1.0.0
至
implementation com.google.android.material:material:1.0.0-alpha1
下载所有设计相关class。
它对我有用
我觉得Best Approach
应该是这样的,先理解问题的陈述。
场景:
- 搜索 Google Inc 为 "AndroidX" 更改并包含在项目
中的库
解法:
前往 Artifact Mappings page of Android Developer Site and Search for your desired library.
Now go to AndroidX Releases page and check for the current version number
now go to build.gradle[module.app]
add the library you want. (ie. CardView in my case) and press
Sync Now
and necessary files will be added to your project by gradle.
See the image below:
现在在 xml 文件中你应该得到 CardView 或你刚导入的东西。
NB: pictures included here are (the first two) taken from Android Developer's Page which belongs to Google Inc and could be different depending on the time you see. See this post's posting time.
您有 2 个不同的选择:
只需添加:
implementation 'com.google.android.material:material:1.2.0'
并且在您的 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 和
的所有功能
我在 Android Studio 3.5.1 中遇到了同样的问题。它对我有用:
def cardview_version = "1.0.0"
implementation "androidx.cardview:cardview:$cardview_version"
xmln: <androidx.cardview.widget.CardView>....
变化:
1。 build.gradle(:app)
dependencies {
...
implementation 'androidx.cardview:cardview:1.0.0'
....
}
2。在 xml 部分:
<androidx.cardview.widget.CardView>
...
</androidx.cardview.widget.CardView>
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]
如何在 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">
报错
The following classes could not be found: - android.support.v7.widget.CardView (Fix Build Path, Edit XML, Create Class)
dependencies {
implementation 'androidx.appcompat:appcompat:1.0.0'
implementation 'androidx.cardview:cardview:1.0.0'
但是我不知道如何在AndroidXxml下使用CardView
谢谢
class已更改为:
androidx.cardview.widget.CardView
如果您想使用旧的 class 名称,您需要将 android:enableJetifier=true
添加到 gradle.properties
并改用 appcompat 依赖项。
替换此行
来自
<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.
中正常工作在gradle依赖项中添加'androidx.cardview:cardview:1.0.0'并相应修改xml。
对于 AndroidX,添加 gradle 依赖项
implementation 'androidx.cardview:cardview:1.0.0'
然后在xml-布局中使用
<androidx.cardview.widget.CardView
implementation com.google.android.material:material:1.0.0
至
implementation com.google.android.material:material:1.0.0-alpha1
下载所有设计相关class。 它对我有用
我觉得Best Approach
应该是这样的,先理解问题的陈述。
场景:
- 搜索 Google Inc 为 "AndroidX" 更改并包含在项目 中的库
解法:
前往 Artifact Mappings page of Android Developer Site and Search for your desired library.
Now go to AndroidX Releases page and check for the current version number
now go to build.gradle[module.app]
add the library you want. (ie. CardView in my case) and press
Sync Now
and necessary files will be added to your project by gradle.
See the image below:
现在在 xml 文件中你应该得到 CardView 或你刚导入的东西。
NB: pictures included here are (the first two) taken from Android Developer's Page which belongs to Google Inc and could be different depending on the time you see. See this post's posting time.
您有 2 个不同的选择:
只需添加:
implementation 'com.google.android.material:material:1.2.0'
并且在您的 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 和
我在 Android Studio 3.5.1 中遇到了同样的问题。它对我有用:
def cardview_version = "1.0.0"
implementation "androidx.cardview:cardview:$cardview_version"
xmln: <androidx.cardview.widget.CardView>....
变化: 1。 build.gradle(:app)
dependencies {
...
implementation 'androidx.cardview:cardview:1.0.0'
....
}
2。在 xml 部分:
<androidx.cardview.widget.CardView>
...
</androidx.cardview.widget.CardView>
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]