2013-05-28 59 views
16

android.support.v4.widget.DrawerLayout;在測試應用程序時未在我的手機上找到。爲什麼會發生這種情況,我該如何解決?java android.support.v4.widget.DrawerLayout未找到

我還不知道,但我想我可能會遇到與android.support.v4.view.GravityCompat;android.support.v4.app.ActionBarDrawerToggle;相同的問題,如果它們確實會導致任何問題。

我從來沒有任何問題android.support.v4.*;之前,但現在它不工作。 我有android.support.v4 lib(可能是一個)。

編輯:更好的錯誤消息

我的錯誤

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 
+0

問題是在xml佈局中,設置爲內容視圖。您需要發佈xml。 – Neoh

+0

我嘗試了谷歌代碼後,看我是否可以得到它的工作,所以我加載他們的源代碼,我仍然有一個錯誤。 http://developer.android.com/training/implementing-navigation/nav-drawer.html – Spik330

+0

您是否已更新到最新的支持庫版本? – Neoh

回答

26

如果您最近更新了ADT的庫構建路徑可能已經搞砸了。請嘗試以下操作:

  1. 右鍵點擊項目
  2. 構建路徑 - >配置構建路徑
  3. 標籤:訂單和出口
  4. 確保您的Android的Android依賴關係庫被檢查
  5. 清潔&建立你的項目

在我最後一次ADT更新期間,他們都沒有選中,我也有類似的錯誤。

+0

構建路徑很好,這是我首先要考慮的事情之一 – Spik330

+0

我最近遇到的另一個非常類似的問題是Google Play庫在ADT更新後未及時更新。如果支持庫需要更新,您是否檢查過SDK工具? –

+0

做到了這一點,我竟然從谷歌下載最新的一個 – Spik330

0

確保兩個actionbarsherlockSherlockNavigationDrawer有支持庫的相同(和最新)版本。

右鍵單擊項目> Android的工具>添加支持庫...

這樣做對雙方項目,你是好去;)

-1

是的,我已經解決了您的問題 剛

Right click on Project 
Build Path -> Configure Build Path 
add your external support v4 
then check the support v4 from order and export 

Make sure your Android and Android Dependencies libraries are checked 
Clean & Build your Project 

我認爲這將解決您的問題

+4

我應該右鍵單擊的「項目」在哪裏?我剛更新到最新版本的Android Studio 1.2.1.1 – Zack

0

我有一個SIM卡ILAR的問題,下面的步驟來解決我的問題:

  1. 我在圖書館項目FacebookSDK打開project.properties並檢查了目標,這在我的情況是目標=機器人-10。

  2. 轉到SDK管理器並檢查是否安裝了API 10,如果缺少安裝則安裝。

就是這樣。

0

我的解決方案(適用於Eclipse):
在[Project-Name]/libs目錄中複製正確版本的支持庫。
也許你必須重建項目。
PS:支持庫位於[Your-SDK-Directory] ​​/ [Choosen-SDK]/extras/android/support/[v4 | v9 | v13]/src

相關問題