2014-03-12 70 views
1

我在Android 2.2的應用程序中移植ActionBar功能。當啓動任何ActionBarActivity得到以下錯誤:Android ActionBar無法找到資源

java.lang.ExceptionInInitializerError 
at android.support.v7.app.ActionBarActivityDelegate.createDelegate(ActionBarActivityDelegate.java:54) 
at android.support.v7.app.ActionBarActivity.onCreate(ActionBarActivity.java:96) 

...

Caused by: java.lang.NoClassDefFoundError: android.support.v7.appcompat.R$attr 
     at android.support.v7.app.ActionBarActivityDelegateBase.<clinit>(ActionBarActivityDelegateBase.java:47) 

我的設立是: IntelliJ IDEA的CE - 135.406 支持Android庫 - 19.0.1

基於類似的問題,我有:

  • 增加v7支持作爲jar
  • 添加程序兼容性作爲庫項目
  • 更改活動延長ActionBarActivity
  • 新增的體現機器人:主題=「@風格/ Theme.AppCompat」

但仍然獲得資源的錯誤,任何建議,我怎麼可以修復這個?

+0

確定您已經正確引用了appcompat ??。右鍵點擊你的項目進入propeties檢查AppCompat是否被正確引用,假設你使用eclipse作爲IDE – Raghunandan

+0

@Raghunandan很確定,我已經創建了新的模塊appcompat,並將其設置爲依賴於我的主應用程序模塊。 – Sigrlami

+0

那麼你不應該得到這個錯誤。 – Raghunandan

回答

0

我解決了這個問題。問題是,IDE添加奇怪的包的位置和jar無法找到它,所以當你加入這樣的庫,小心正確的路徑重命名包,見例如以低於圖像:

before after

我手動在「包名稱」字段中輸入android.support.v7.appcompat。這有點模糊,因爲添加庫時不注意這個字段。