2015-09-28 20 views
32

私のアプリケーションはライブラリを追加しようとするまで正常に動作しました。私は、ライブラリを追加した後に、Androidのメーカーは私に次のエラーを与える:パッケージの属性 'layout_behavior'のリソース識別子が見つかりませんでした

Error:(26) No resource identifier found for attribute 'layout_behavior' in package 'inf..'

これは私のbuild.gradleファイルです:

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.android.support:appcompat-v7:23.0.1' 
    compile 'com.android.support:support-v4:23.0.1' 
    compile 'com.ogaclejapan.smarttablayout:utils-v4:[email protected]' 
    compile 'com.ogaclejapan.smarttablayout:library:[email protected]' 
    compile 'com.jpardogo.materialtabstrip:library:1.1.0' 
    // compile 'com.lorentzos.swipecards:library:[email protected]' 
    compile 'com.android.support:cardview-v7:21.0.3' 
    compile 'com.android.support:recyclerview-v7:21.0.3' 
    compile 'com.melnykov:floatingactionbutton:1.3.0' 
    compile project(':swipelib') 
} 

これは、エラーが発生したXMLです:

<android.support.v4.view.ViewPager 
    android:id="@+id/viewpager" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior"/> 

私は以下を試しました:

  • Removライブラリを
  • リセットAndroidスタジオとマイコンピュータ
  • gitの前のバージョンのコードに戻しました。

ただし、エラーは解決しません。これをどうやって解決するのですか?

答えて

93

その文字列が、このライブラリーから来ている:

compile 'com.android.support:design:23.0.1' 

あなたは材料設計サポートライブラリからCoordinatorLayoutを使用していないので、あなたが安全にapp:layout_behavior属性を削除することができるはずです。おそらく他のコードから切り取った&ペーストでした。

注:あなたが実際にCoordinatorLayoutを使用して、協力スクロール行動が仕事をしたいしている場合は、(上記のように)あなたのGradleビルドしたファイルへの材料設計支援ライブラリの最新バージョンの依存関係を追加する必要があります。

+0

デザインライブラリの最新バージョンを使用していることを確認してください。最新版を入手するには、デザインライブラリの公式ページをチェックしてください。 https://developer.android.com/training/material/design-library.html#AddDependencyこのコメントを書いている時点で、最新バージョンは '' compile 'com.android.support:design:25.3.1' '' ' – Fatih

+0

あなたは私の日@krisLarson –

16

注::バージョンは現在変更されているため、最新のバージョンに置き換えてください。

受け入れ答えは、あなたが実際に使用したい場合はしかし、場合にはエラーを取り除くlayout_behavior必要とされていません。

app:layout_behavior="@string/appbar_scrolling_view_behavior" 

は、あなたのモジュールのbuild.gradleファイルに適切な依存関係を追加してください:

apply plugin: 'com.android.library' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "21.1.2" 

    //Other stuff.... 
} 

dependencies { 

    //Importing the design library fixes the build 
    compile 'com.android.support:design:23.1.0' 

    //Other libraries.... 
} 

eあなたの依存関係に次の行を追加します

compile 'com.android.support:design:23.1.0' 
+2

を保存しましたが、 'com.android.support:design:23.1.0'は壊れた' app:layout_behavior = "@ string/appbar_scrolling_view_behavior" ' – dsdsdsdsd

+0

@ dsdsdsdsd私はちょっと試しましたが、同じ問題がいくつかの点で起きていたので、 – AgentKnopf

+0

私のライブラリにはすでにこの依存関係がありますが、同じエラーが表示されます。私はアプリケーションのプロジェクトのgradleの依存関係にデザインライブラリを追加すると、それは遠ざかります。ライブラリに既に入っているときにアプリプロジェクトに追加する必要があるのはなぜですか?任意のソリューションですか? – Asu

24

念のために他の誰かがグーグルから来ていると私は同じ間違いを犯し、それがlayout_behaviOr、ないlayout_behavioUrです。

+0

fmlをご覧ください。いいキャッチ:) – chyupa

+1

うわー。あなたは私を持っています – Chris

+0

多分私は私のGradleのビルドにスピードフェーズを動作する必要があります... –

0

build.gradleにコンパイルcom.android.support:design:23.0.1 を追加してください。

1

この問題があります。私はトウステップで私の問題を解決しました。 1 android sdk managerのSDKToolsのAndroidSupportLibraryパッケージとAndroidSupportRepositoryパッケージの最新バージョンをダウンロードします(またはupgaradを最新バージョンにアップグレードします)。 2サポート依存変更ind buildを変更します。私にとって

compile 'com.android.support:appcompat-v7:25.+' 
compile 'com.android.support:support-v4:25.+' 
compile 'com.android.support:recyclerview-v7:25.+' 
compile 'com.android.support:design:25.+' 
-2

コンパイル 'com.android.support:design:23.0.1'

このソリューションへのGradle金融商品取引法は、

0

AgentKnopf Answer 「ビルドに適切な依存関係を追加することを確認します。あなたのモジュールのGradleのファイル」、そして、私はあなたにもモジュールは、このようなあなたの現在のバージョンと同じであることを確認し、追加します。コンパイル 『com.android.support:design:コンパイル使用していない場合25.3.1.0 』をcom.android.support:design**:23.1.0** '

関連する問題