在我的项目中使用android.support.v7.widget.CardView(Eclipse)

时间:2014-06-27 10:13:22

标签: android eclipse android-5.0-lollipop android-cardview

我想使用随新的Android L开发人员预览支持库(如前所述here)引入的新CardView小部件,这似乎是v7支持的新修订版的一部分库。

我现在更新了我的SDK版本,下载了最新的支持库包,但我仍然找不到新的CardView小部件。

我已经搜索了网络和官方文档,但无法获得有关我可以获得新支持库的任何提示。

非常感谢任何帮助!

编辑:我正在使用ADT / Eclipse

12 个答案:

答案 0 :(得分:52)

使用Gradle或Android Studio,尝试在com.android.support:cardview-v7添加依赖项。

目前似乎没有针对cardview-v7leanback-v17palette-v7recyclerview-v7的常规Android库项目。我不知道Google何时/何时会发布这样的图书馆项目。

答案 1 :(得分:41)

我终于找到了在ADT / Eclipse中使用CardView的方法。这实际上非常简单:

  1. 在Android Studio中创建新项目
  2. 按照此问题的其他答案中的说明添加CardView依赖关系
  3. 打开ADT并创建一个包名为android.support.v7.cardview
  4. 的新库项目
  5. 删除ADT自动创建的所有资源
  6. 在Android Studio中找到exploded-aar文件夹,并将以下文件复制到以下位置:
    • res / values / values.xml 到ADT项目中的同一位置
    • classes.jar 到您的ADT项目中的libs /
    • AndroidManifest.xml 使用它来替换ADT中自动生成的清单
  7. 将classes.jar添加到构建路径并确保将其导出
  8. 在您要使用CardView的项目中添加对库项目的引用。您可以按照此处Adding libraries with resources下提供的步骤进行操作:https://developer.android.com/tools/support-library/setup.html
  9. 作为必须创建新的Android Studio项目以获取AAR内容的替代方法,您还可以从本地maven仓库中查找并解压缩AAR。请按照下面Andrew Chen提供的步骤进行操作。

    请注意,CardView库可能无法以源代码和ADT兼容形式提供,因为它仍然只是预览和WIP。由于可能存在以下版本中的错误修复和改进,因此使用Gradle依赖项很容易使库保持最新,但必须在使用上面提供的步骤时手动完成。

答案 2 :(得分:33)

您需要在build.gradle中添加它:

dependencies {
    ...
    compile 'com.android.support:cardview-v7:+'
}

然后Sync Project with Gradle Files。最后,您可以按照here所述使用CardView。

答案 3 :(得分:27)

我已经完成了以下操作,它解决了recyclerview的问题,如果它在eclipse项目中不起作用,也可以用于其他小部件。

•转到 sdk \ extras \ android \ m2repository \ com \ android \ support \ recyclerview-v7 \ 21.0.0-rc1 目录

•复制 recyclerview-v7-21.0.0-rc1.aar 文件并将其重命名为.zip

•解压缩文件,您将获得 classes.jar (将jar文件重命名为更有意义的名称)

•在项目构建路径或lib目录中使用以下jar。

它可以解决您的错误。

快乐的编码:)

答案 4 :(得分:19)

https://github.com/yongjhih/CardView

CardView v7 eclipse项目。 (来自sdk / extras / android / m2repository / com / android / support / cardview-v7)

该项目是按步骤建立的:

cp {sdk}/extras/android/m2repository/com/android/support/cardview-v7/21.0.0-rc1/cardview-v7-21.0.0-rc1.aar cardview-v7-21.0.0-rc1.zip
unzip cardview-v7-21.0.0-rc1.zip
mkdir libs/
mv classes.jar libs/cardview-v7-21.0.0-rc1.jar

答案 5 :(得分:10)

只有在将这两个一起添加后,我才能解决这个问题:

dependencies {
...
implementation 'com.android.support:recyclerview-v7:27.1.1'
implementation 'com.android.support:cardview-v7:27.1.1'
...
}

在我的 build.gradle(模块:应用)文件

然后按立即同步按钮

答案 6 :(得分:3)

虽然有点隐藏它在official docs here中可以在sdk的代码中找到库,以及如何使用资源(Eclipse方式)获取它

答案 7 :(得分:2)

来自:https://developer.android.com/tools/support-library/setup.html#libs-with-res

使用资源添加库 要向应用程序项目添加包含资源的支持库(例如操作栏的v7 appcompat):

使用Eclipse

根据支持库代码创建库项目:

  • 确保您已使用SDK Manager下载了Android支持库。

  • 创建一个库项目并确保项目的构建路径中包含所需的JAR文件:

  • 选择文件>导入。

  • 选择现有Android代码进入工作区,然后单击下一步。

  • 浏览到SDK安装目录,然后浏览到Support Library文件夹。例如,如果要添加appcompat项目,请浏览到/ extras / android / support / v7 / appcompat /.

  • 单击“完成”以导入项目。对于v7 appcompat项目,您现在应该看到一个名为android-support-v7-appcompat的新项目。

  • 在新的库项目中,展开libs /文件夹,右键单击每个.jar文件并选择Build

  • 路径>添加到构建路径。例如,在创建v7 appcompat项目时,将android-support-v4.jar和android-support-v7-appcompat.jar文件添加到构建路径中。

  • 右键单击库项目文件夹,然后选择Build Path>配置构建路径。

  • 在“订购和导出”选项卡中,检查刚刚添加到构建路径的.jar文件,以便它们可供依赖于此库项目的项目使用。例如,appcompat项目要求您导出android-support-v4.jar和android-support-v7-appcompat.jar文件。

  • 取消选中Android依赖项。

  • 单击“确定”完成更改。

  • 您现在拥有所选支持库的库项目,可以与一个或多个应用程序项目一起使用。

  • 将库添加到您的应用程序项目中:

  • 在项目浏览器中,右键单击项目并选择“属性”。

  • 在对话框左侧的类别面板中,选择Android。

  • 在“库”窗格中,单击“添加”按钮。

  • 选择库项目,然后单击“确定”。例如,appcompat项目应列为android-support-v7-appcompat。

  • 在属性窗口中,单击“确定”。

答案 8 :(得分:2)

在这里添加答案可能有点晚了。但我认为这个答案将有助于后者,特别是那些不想使用Android Studio的人。

虽然文档说RecyclerView和CardView是v7 appcompat库的一部分。但正如我试图发现的那样,RecyclerView和CardView实际上依赖于v7 appcompat库。因此,如果您想使用RecyclerView或CardView,您需要添加v7 appcompat库和RecyclerView / CardView。

引用链接here,如果要在Eclipse android项目中使用CardView,则需要将v7 appcompat库和CardView导入Eclipse工作区,并将它们作为库项目。然后使CardView项目依赖于v7 appcompat库项目,并使您的项目依赖于CardView项目。

答案 9 :(得分:2)

只需在build.gradle项目中添加以下行

即可
dependencies {
    ...
    compile 'com.android.support:cardview-v7:24.0.0'
}

并使用gradle同步项目。

答案 10 :(得分:0)

我做了FD_所说的内容,因为它正在寻找“Landroid / support / v7 / cardview / R $ styleable;”而没有编译错误而崩溃了

如果你真的想在eclipse之前使用CardView才能获得自己的库,你可以从classes.jar中提取类,将它们复制并粘贴到你的项目中,使用Android Studio中的来自上面的values.xml和将所有对android.support.v7.R的引用更改为复制类中的yourpackagename.R。这工作并为我跑了

答案 11 :(得分:0)

在最新的android系统中,我们这样实现卡片视图:

build.gradle文件:

dependencies {
    ...
    compile 'com.android.support:cardview-v7:24.0.0'
}

,在xml文件中,其引用为:

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

这意味着其类别已更改为: androidx.cardview.widget.CardView