13

我使用Eclipse,並試圖使用Lollipop的新support-library-v7:21.+來創建應用程序。將android.support.v7.widget.CardView導入Eclipse時遇到問題

  • 創建我的新項目
  • 進口在Eclipse中support-library-v7
  • 支持庫project-properties行改爲:target=android-21 21目標
  • 改變了我的應用程序的目標在21
  • 進口圖書館在我的項目中
  • 全部清除

畢竟我還是得到了無效的R聲明。我重新啓動了Eclipse,然後在重新導入庫之後,似乎就開始了!我創建了一個Tolbar和一個NavigationDrawer以及沒有問題 - 它的工作。現在

,我想放CardViewListView項目:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    xmlns:card_view="http://schemas.android.com/apk/res-auto" 
    > 
    <!-- A CardView that contains a TextView --> 
    <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/name" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     /> 
    <TextView 
     android:id="@+id/codename" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     /> 
    <TextView 
     android:id="@+id/versione" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     /> 
    <TextView 
     android:id="@+id/link" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     /> 
    <TextView 
     android:id="@+id/timestamp" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     /> 

    </android.support.v7.widget.CardView> 
</LinearLayout> 

好,第一個錯誤:No resource identifier found for attribute 'cardCornerRadius'。 我試圖刪除的屬性,重新啓動應用程序,但我得到了下面的崩潰:

java.lang.RuntimeException: Binary XML file line #2: You must supply a layout_width attribute. 

我不明白是什麼問題。

+0

確保導入'com.android.support:cardview-v7'太 – 2014-11-03 17:08:16

+0

你的父母LinearLayout需要定義layout_width和layout_height。 – michaelcarrano 2014-11-03 17:09:52

+0

我修正了佈局但沒有任何作品..但是..如果我可以做到這一點,我可以把卡片視圖..漣漪效果onclick仍然有效?或不? – 2014-11-03 17:15:02

回答

18

添加庫

搖籃

compile 'com.android.support:appcompat-v7:22.0.0' 
compile 'com.android.support:cardview-v7:22.0.0' 

的Eclipse

Using android.support.v7.widget.CardView in my project (Eclipse)

正確的LinearLayout

正如錯誤所說,一個LinearLayout需要一個layout_widthlayout_heighth。總是。

+0

我使用eclipse ..沒有build.gradle ...可能是問題? – 2014-11-03 17:24:58

+0

是的,它仍然可以。 AppCompat和CardView是2個不同的庫。查看更新的答案。 – shkschneider 2014-11-03 17:27:07

+0

mmh重新啓動3次日食似乎work..but cardview是所有。我看不到textviews .. – 2014-11-03 17:34:05

0

我列出了爲我工作的步驟,作爲this question的答案。它應該工作。

0

我有同樣的問題。

試過添加Eclipse->適當的 - > Android-> Libraries-> Add = CardView不存在。 嘗試了Eclipse-> properies-> JavaBuildPath-> Libraries-> Add Jars - >(從CardView-> libs中選擇)不起作用。

what was: cardview-> project.properites,add android.library = true if missing。

+0

切換到Intellij或Android Studio。 – 2015-03-22 19:27:28

0

我們需要做的東西都添加android.support.v7.widget。CardView作爲一個庫項目,並添加+檢查它的jar文件在java構建路徑

轉到文件 - >導入 - >現有的Android代碼到工作區 - >瀏覽(轉到SDK /附加/安卓/支持/ V7/cardview) - >單擊確定 - >單擊完成

右鍵單擊cardview項目 - >屬性 - > Android(左窗格) - >啓用isLibrary(勾選複選框) - >應用 - >確定

右鍵點擊你的項目 - >屬性 - >安卓(左窗格) - >添加(在庫) - > cardview - >應用 - >確定

右鍵點擊你的項目aga在 - >構建路徑 - >配置構建路徑 - >在庫下 - >添加jar - >展開cardview - >展開庫 - >選擇android.support.v7.widget.CardView.jar

下命令和導出 - >檢查android.support.v7.widget.CardView.jar - >點擊

希望它能正常工作。

0

很明顯,您沒有導入CardView支持項目作爲您的主項目庫。要導入CardView庫,您需要這樣做:
1,首先,導入CardView支持庫到Eclipse中。這個過程應該是這樣的: File - >Import - >Android - >Existing Android Code into Eclipse - >Browse - >.../sdk/extras/android/support/v7/cardview - >OK - >Finish。然後你會在你的Eclipse中看到android-support-v7-cardview的項目,其中包含所有資源和jar。
2,將android-support-v7-cardview作爲庫添加到您的主項目中。就像這樣:右鍵單擊您的項目 - >Properties - >Android - >Add,然後在您的項目中選擇android-support-v7-cardview

然後,重建您的項目。您的項目中的CardView錯誤將會完成。

0

裏面你build.gradle文件(內依賴部分)增加對支持庫和cardView支持庫的最後一個版本:

dependencies { 
    ... 
    ... 
    compile 'com.android.support:appcompat-v7:23.1.1' 
    compile 'com.android.support:cardview-v7:23.0.1' 
}