web-dev-qa-db-ja.com

java Android.support.v4.widget.DrawerLayoutが見つかりません

アプリをテストしても、携帯電話でAndroid.support.v4.widget.DrawerLayout;が見つかりません。なぜこれが起こっているのですか、どうすれば修正できますか?

まだわかりませんが、Android.support.v4.view.GravityCompat;Android.support.v4.app.ActionBarDrawerToggle;で同じ問題が発生している可能性があると思います。

以前にAndroid.support.v4.*;で問題が発生したことはありませんが、現在は機能していません。 Android.support.v4 lib(5月1日)があります。

編集:より良いエラーメッセージ

私のエラー

05-27 19:46:21.230: E/jdwp(11659): Failed sending reply to debugger: Broken pipe
05-27 19:46:21.290: W/dalvikvm(11659): VFY: unable to resolve virtual method 30: Landroid/support/v4/widget/DrawerLayout;.closeDrawer (Landroid/view/View;)V
05-27 19:46:21.290: W/dalvikvm(11659): VFY: unable to resolve virtual method 27: Landroid/support/v4/app/ActionBarDrawerToggle;.onConfigurationChanged (Landroid/content/res/Configuration;)V
05-27 19:46:21.290: E/dalvikvm(11659): Could not find class 'Android.support.v4.widget.DrawerLayout', referenced from method com.MainActivity.onCreate
05-27 19:46:21.290: W/dalvikvm(11659): VFY: unable to resolve check-cast 16 (Landroid/support/v4/widget/DrawerLayout;) in Lcom/MainActivity;
05-27 19:46:21.290: W/dalvikvm(11659): VFY: unable to resolve virtual method 28: Landroid/support/v4/app/ActionBarDrawerToggle;.onOptionsItemSelected (Landroid/view/MenuItem;)Z
05-27 19:46:21.290: W/dalvikvm(11659): VFY: unable to resolve virtual method 29: Landroid/support/v4/app/ActionBarDrawerToggle;.syncState ()V
05-27 19:46:21.290: W/dalvikvm(11659): VFY: unable to resolve virtual method 31: Landroid/support/v4/widget/DrawerLayout;.isDrawerOpen (Landroid/view/View;)Z
05-27 19:46:21.290: W/dalvikvm(11659): Unable to resolve superclass of Lcom/MainActivity$1; (14)
05-27 19:46:21.290: W/dalvikvm(11659): Link of class 'Lcom/MainActivity$1;' failed
05-27 19:46:21.340: W/dalvikvm(11659): threadid=1: thread exiting with uncaught exception (group=0x40bc71f8)
05-27 19:16:42.404: E/dalvikvm(10623): Could not find class 'Android.support.v4.widget.DrawerLayout', referenced from method com.MainActivity.onCreate
05-27 19:16:42.464: E/AndroidRuntime(10623): FATAL EXCEPTION: main
05-27 19:16:42.464: E/AndroidRuntime(10623): Java.lang.RuntimeException: Unable to start activity ComponentInfo{com.MainActivity}: Android.view.InflateException: Binary XML file line #3: Error inflating class Android.support.v4.widget.DrawerLayout
16
Spik330

ADTを最近更新した場合、ライブラリビルドパスが台無しになっている可能性があります。以下を試してください:

  1. プロジェクトを右クリック
  2. ビルドパス-> ビルドパスの構成
  3. タブ:注文とエクスポート
  4. AndroidおよびAndroid Dependenciesライブラリがチェックされていることを確認してください
  5. プロジェクトのクリーンとビルド

前回のADT更新中に、それらすべてがチェックされなくなり、同様のエラーが発生しました。

26
Daniel Lerps

私のソリューション(Eclipse用):
[Project-Name]/libsディレクトリに適切なバージョンのサポートライブラリをコピーします。
プロジェクトを再構築する必要があるかもしれません。
PS:サポートライブラリは[Your-SDK-Directory] ​​/ [Choosen-SDK]/extras/Android/support/[v4 | v9 | v13]/srcにあります

0
Filius Patris

同様の問題があり、次の手順で問題を解決しました。

  1. ライブラリプロジェクトFacebookSDKでproject.propertiesを開き、ターゲット(この場合はtarget = Android-10)を確認しました。

  2. sDKマネージャーに移動して、API 10がインストールされているかどうかを確認し、欠落している場合はインストールします。

それで全部です。

0
AamirR

actionbarsherlockSherlockNavigationDrawerの両方がサポートライブラリの同じ(そして最新の)バージョンを持っていることを確認してください。

[プロジェクト]を右クリックして[Android [ツール]> [サポートライブラリの追加...].

bothプロジェクトでこれを行うと、準備完了です;)

0
mmbrian