将CardView添加到布局时出错

我想尝试谷歌给我们的新玩具,我遇到了一些麻烦。

这是我的build.gradle:

apply plugin: 'com.android.application' android { compileSdkVersion 'android-L' buildToolsVersion "20.0.0" defaultConfig { applicationId "com.tod.android.lpreviewtest" minSdkVersion 'L' targetSdkVersion 'L' versionCode 1 versionName "1.0" } buildTypes { release { runProguard false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:cardview-v7:+' } 

现在我的布局:

      

当我在android studio中切换到屏幕预览时,我收到渲染错误:

 Rendering Problems The following classes could not be instantiated: - android.support.v7.widget.CardView (Open Class, Show Exception) Exception Details java.lang.ClassFormatError: Illegal field name "CardView.Dark" in class android/support/v7/cardview/R$style at java.lang.ClassLoader.defineClass1(ClassLoader.java:-2)   at java.lang.ClassLoader.defineClass(ClassLoader.java:792)   at java.lang.ClassLoader.defineClass(ClassLoader.java:635)   at java.lang.ClassLoader.loadClass(ClassLoader.java:424)   at java.lang.ClassLoader.loadClass(ClassLoader.java:411)   at java.lang.ClassLoader.loadClass(ClassLoader.java:357)   at android.support.v7.widget.CardView.initialize(CardView.java:69)   at android.support.v7.widget.CardView.(CardView.java:60)   at java.lang.reflect.Constructor.newInstance(Constructor.java:526)   at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:802)   at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64)   at android.view.LayoutInflater.rInflate(LayoutInflater.java:778)   at android.view.LayoutInflater.inflate(LayoutInflater.java:500)   at android.view.LayoutInflater.inflate(LayoutInflater.java:381) 

我尝试忽略错误并在avd中运行应用程序,虽然一切都编译好,但布局中没有出现cardview。 请帮忙!

我正在使用新的Android Studio beta 0.8.0

  • 用android:drawable =“@ color / transparent”属性select器
  • 是否可以在Android中拥有多个字符串资源文件?
  • Android Studio AndroidManifest.xml vs build.gradle
  • android.os.TransactionTooLargeException检索已安装的应用程序
  • Android Studio XML不能识别objectAnimator
  • 如何在android中删除标题栏?
  • Android Studio - 操作栏删除
  • 如何在圆形imageview周围添加阴影
  • 这是Android Studio中的错误,请参阅https://code.google.com/p/android/issues/detail?id=79071

    补丁的一条评论写道:“这导致卡片视图呈现失败.CardView声明了CardView.Darkforms的样式,因为生成的R类无法加载。”

    下一个版本应根据错误报告(补丁在分支工作室-1.0-dev上)修复此问题。 他们说要将项目构建一次作为一种解决方法,但这并不能解决它(即使我有完全相同的错误和堆栈跟踪)。

    通过将build.gradle更改为:我能够让它在模拟器上工作:

     dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:cardview-v7:+' } 

    确保从SDK Manager安装了支持存储库! 希望这可以帮助

    编辑:有人建议使用’com.android.support:cardview-v7:23.1’是一个更好的做法,但它不是必需的。

    尝试将此行添加到RelativeLayout

     xmlns:card_view="http://schemas.android.com/apk/res-auto" 

    它通过添加xmlns:card_view="http://schemas.android.com/apk/res-auto"解决了我xmlns:card_view="http://schemas.android.com/apk/res-auto"

       --->> ****** .... ...  .. ... .....   

    我可以通过在build.gradle中添加以下内容来实现这一点:compile’c​​om.android.support:cardview-v7:21.+’

    希望这可以帮助。

    尝试将此添加到build.gradle文件中

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